2017-12-23 19 views
0

3.0に、私は3.0.*composer.jsonにバージョンを変更したが、作曲の更新が行われた後、私はコンソールでこれらのエラーを持っている:のSymfony 2.8移行

[RuntimeException]
An error occurred when executing the "'cache:clear --no-warmup'" command:
PHP Fatal error: Class 'Symfony\Component\HttpKernel\Kernel' not found in
/var/www/html/t/EcoPro/app/AppKernel.php on line 6

+0

あなたのアプリ(_dev).phpファイルと作曲者jsonを見ることはできますか? – Federkun

答えて

0

それはあなたのように聞こえますコードはSymfonyからKernelクラスと戦うことができません。 Symfony repository in the 3.0-branchに表示されているように、更新中に何かが間違っていると思われます。

最初にcomposer diagnoseを実行して、コンポーザー自体が最新で、composer.jsonが構文的に有効かどうかを確認することをお勧めします。次の手順として、composer showを実行して、依存関係の現在のバージョンを確認する必要があります。出力は次のようになります。

$ composer show 
doctrine/annotations     v1.2.7 Docblock Annotations Parser 
doctrine/cache      v1.5.1 Caching library offering an object-oriented API for many cache backends 
doctrine/collections     v1.3.0 Collections Abstraction library 
doctrine/common      v2.5.1 Common Library for Doctrine projects 
doctrine/dbal      v2.5.2 Database Abstraction Layer 
doctrine/doctrine-bundle    1.6.0 Symfony DoctrineBundle 
doctrine/doctrine-cache-bundle  1.2.2 Symfony Bundle for Doctrine Cache 
doctrine/inflector     v1.1.0 Common String Manipulations with regard to casing and singular/plural rules. 
doctrine/instantiator    1.0.5 A small, lightweight utility to instantiate objects in PHP without invoking their constructors 
doctrine/lexer      v1.0.1 Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers. 
doctrine/orm       v2.5.2 Object-Relational-Mapper for PHP 
incenteev/composer-parameter-handler v2.1.2 Composer script handling your ignored parameter file 
jdorn/sql-formatter     v1.2.17 a PHP SQL highlighting library 
monolog/monolog      1.17.2 Sends your logs to files, sockets, inboxes, databases and various web services 
paragonie/random_compat    1.1.0 PHP 5.x polyfill for random_bytes() and random_int() from PHP 7 
psr/log        1.0.0 Common interface for logging libraries 
sensio/distribution-bundle   v5.0.2 Base bundle for Symfony Distributions 
sensio/framework-extra-bundle  v3.0.11 This bundle provides a way to configure your controllers with annotations 
sensio/generator-bundle    v3.0.0 This bundle generates code for you 
sensiolabs/security-checker   v3.0.2 A security checker for your composer.lock 
swiftmailer/swiftmailer    v5.4.1 Swiftmailer, free feature-rich PHP mailer 
symfony/monolog-bundle    v2.8.2 Symfony MonologBundle 
symfony/phpunit-bridge    v2.8.0 Symfony PHPUnit Bridge 
symfony/polyfill-intl-icu   v1.0.0 Symfony polyfill for intl's ICU-related data and classes 
symfony/polyfill-mbstring   v1.0.0 Symfony polyfill for the Mbstring extension 
symfony/polyfill-php56    v1.0.0 Symfony polyfill backporting some PHP 5.6+ features to lower PHP versions 
symfony/polyfill-php70    v1.0.0 Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions 
symfony/polyfill-util    v1.0.0 Symfony utilities for portability of PHP codes 
symfony/swiftmailer-bundle   v2.3.9 Symfony SwiftmailerBundle 
symfony/symfony      v3.0.0 The Symfony PHP framework 
twig/twig       v1.23.1 Twig, the flexible, fast, and secure template language for PHP 

これは、アップデートが実際に機能しているかどうかを確認するのに役立ちます。すべてがうまく見えたら、私はsafeルートに行き、あなたのコードを2.8に戻し、次にcomposer.jsonを変更するのではなく、次に説明するような更新を行います!

まず、既存のアプリケーションですべての廃止予定が修正されていることを確認してください。 UPGRADE-documentを参照として使用することもできますが、テストとcheck the logs for deprecated callsを実行することもできます。これらのバージョンには別のログファイルの横にvar/logという別のdeprecation-logがあるため、3.3+ではより簡単になります。

あなたは、コードだけで、次の作曲コマンドを使用し、新しいメジャーバージョンで実行されます合理的に確信していたら:これは、我々が誤っているすべてのsymfonyのコンポーネントをインストールしていないことを確認することです

composer require symfony/lts:"^3.0" 

をプロセス中に4.0である。 Symfony 4にアップグレードしたい場合は、composer remove symfony/ltsを使用してこの依存関係を削除してから、updateを実行してください。

LTSのメタパッケージが配置された後、あなたはsymfony自体の更新ができます:あなたは本当に一歩を移動したい場合は、あなたの依存関係がサポートする最新の3.xのに更新したり、厳しい制約を使用する

composer require symfony/symfony:^3.0 

をステップ:あなたが好きな場合は、1つのステップで両方のことを行うことができます

composer require symfony/symfony:3.0.* 

$ composer require symfony/lts:^3.0 symfony/symfony:^3.0 
./composer.json has been updated 
Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Package operations: 5 installs, 2 updates, 0 removals 
- Updating symfony/symfony (v2.8.32 => v3.4.2): Downloading (100%) 
- Installing psr/simple-cache (1.0.0): Loading from cache 
- Installing psr/link (1.0.0): Loading from cache 
- Installing psr/container (1.0.0): Loading from cache 
- Installing psr/cache (1.0.1): Loading from cache 
- Installing fig/link-util (1.0.0): Loading from cache 
Writing lock file 
Generating autoload files 
> Incenteev\ParameterHandler\ScriptHandler::buildParameters 
Updating the "app/config/parameters.yml" file 
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap 
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache 

// Clearing the cache for the dev environment with debug 
// true 


[OK] Cache for the "dev" environment (debug=true) was successfully cleared. 


> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installAssets 

Trying to install assets as relative symbolic links. 


[OK] No assets were provided by any bundle. 


> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installRequirementsFile 
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::prepareDeploymentTarget 

これは新しいバージョンでSymfonyを使用するのに十分なはずです。 Doctrineやあなたがインストールしたバンドルなど、他の依存関係を持つ可能性があります。それらを更新するためのいくつかの便利なコマンドがあります。

まず、あなたは、一度に単一の依存関係を更新することができます:あなたはオプション--with-dependenciesを追加すると

composer update doctrine/orm 

それはまた、教義/ ORMの依存関係を更新します。

composer whyまたはcomposer why-notには常に依存関係とオプションでバージョンを問い合わせて、依存関係が存在する理由と更新されない理由を確認できます。使用方法は、composer help why-notと入力してください。これは、doctrine/ormのような依存関係を更新したいが、作者がそれを行えないというエラーを投げるときに特に役立ちます。

関連する問題