2017-08-28 13 views
0

AWS PHP 7.0インスタンス(Elastic Beanstalk、しかしそれは問題ではありません)にLaravelアプリケーションをデプロイしようとしています。Doctrineパッケージのため、Laravel 5.4はPHP 7.0で動作しません

私はすべてのアイデアはどのように私はこれを抑制またはPHP 7.0でそれを回避することができ、次のエラーに

+ composer.phar install --no-ansi --no-interaction 
Do not run Composer as root/super user! See https://getcomposer.org/root for details 
Loading composer repositories with package information 
Installing dependencies (including require-dev) from lock file 
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - Installation request for doctrine/instantiator 1.1.0 -> satisfiable by doctrine/instantiator[1.1.0]. 
    - doctrine/instantiator 1.1.0 requires php ^7.1 -> your PHP version (7.0.16) does not satisfy that requirement. 
    Problem 2 
    - doctrine/instantiator 1.1.0 requires php ^7.1 -> your PHP version (7.0.16) does not satisfy that requirement. 
    - phpunit/phpunit-mock-objects 3.4.4 requires doctrine/instantiator ^1.0.2 -> satisfiable by doctrine/instantiator[1.1.0]. 
    - Installation request for phpunit/phpunit-mock-objects 3.4.4 -> satisfiable by phpunit/phpunit-mock-objects[3.4.4]. 
(Executor::NonZeroExitStatus) 

を取得しますか?

マイcomposer.json

{ 
    "name": "myapp", 
    "description": "My App.", 
    "keywords": ["framework", "laravel", "lumen"], 
    "license": "MIT", 
    "type": "project", 
    "require": { 
     "php": ">=5.6.4", 
     "laravel/lumen-framework": "5.4.*", 
     "vlucas/phpdotenv": "~2.2", 
     "romanpitak/nginx-config-processor": "^0.2.1", 
     "symfony/stopwatch": "^3.2", 
     "comodojo/zip": "^2.1", 
     "riimu/kit-pathjoin": "1.*", 
     "aws/aws-sdk-php": "^3.25", 
     "spatie/url": "dev-master" 
    }, 
    "require-dev": { 
     "fzaninotto/faker": "~1.4", 
     "phpunit/phpunit": "~5.0", 
     "mockery/mockery": "~0.9" 
    }, 
    "autoload": { 
     "psr-4": { 
      "App\\": "app/" 
     } 
    }, 
    "autoload-dev": { 
     "classmap": [ 
      "tests/", 
      "database/" 
     ] 
    }, 
    "scripts": { 
     "post-root-package-install": [ 
      "php -r \"copy('.env.example', '.env');\"" 
     ] 
    }, 
    "minimum-stability": "dev", 
    "prefer-stable": true 
} 

P.S.私は単体テストを使用していません。私は "require-dev"パッケージを削除しようとしましたが、それと同じエラーです。

+0

なぜ開発依存関係を展開していますか?これはテスト環境ですか?そうでない場合、 'composer install --no-dev'を実行してください。 https://getcomposer.org/doc/03-cli.md#installを参照してください。 – localheinz

+1

composer.jsonの各変更の間にあなたのcomposer.lockファイルを削除していないように見えますか? composer.lockファイルが存在する場合、 'composer install'はcomposer.jsonを見ませんか?あなたは、composer.jsonからのphpunitの依存関係を取り除いたと言いますが、間違いなく "error"メッセージで間接的に言及されています。 –

答えて

1

"composer.lock"が存在するというバグがありました。その場合、 "composer install"を実行するとどうなりますか?

もう一度コンポーザインストールを実行してください。今回は、Composerはディレクトリにcomposer.lockファイルがあることを確認します。代わりに、あなたの依存関係の互換性のあるバージョンを見つけてcomposer.jsonファイルを実行すると、composer.lockファイルに定義されている依存関係の正確なバージョンがインストールされます。https://laravel-news.com/understanding-the-composer-lock-file

関連する問題