Composerは本番環境にsymfonyをインストールできません。開発ではすべてが正常に機能します。すべての権限は問題ありません。
PHP Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "SensioGeneratorBundle" from namespace "Sensio\Bundle\GeneratorBundle".
Did you forget a "use" statement for another namespace? in /home/ev/app/AppKernel.php:25
Stack trace:
#0 /home/ev/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(396): AppKernel->registerBundles()
#1 /home/ev/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(114): Symfony\Component\HttpKernel\Kernel->initializeBundles()
#2 /home/ev/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php(68): Symfony\Component\HttpKernel\Kernel->boot()
#3 /home/ev/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php(118): Symfony\Bundle\FrameworkBundle\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#4 /home/ev/bin/console(27): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Inp in /home/ev/app/AppKernel.php on line 25
これはAppKernel.phpの25行目です。
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
任意の提案を歓迎します:)
製品環境では、SensioGeneratorBundleは登録されていません。このバンドルは、次のように開発バンドルのように定義する必要があります。
if (in_array($this->getEnvironment(), array('dev', 'test'))) {
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
}
そしてあなたのcomposerファイルの中に:
"require-dev": {
"sensio/generator-bundle": "~2.3"
}
このバンドルの生成コマンドをProdenvで使用する場合は、宣言をdevからProdに移動する必要があります(非推奨です!)
これは私のために働いた:
$ cd project_folder
$ composer dump-autoload
これにより、ファイルが再読み込みされ、設定が読み込まれます。
これはあなたの目標にも依存します:
composer install --no-dev
およびSYMFONY_ENV=prod
そしてエラーは消えるはずです。