У меня есть команда в Symfony3, когда я выполняю ее на локальном компьютере, она работает нормально ... потому что DIR моего поставщика находится внутри моего веб-приложения myproject / vendor .... Но на рабочем сервере этот каталог "vendor" отсутствует, в общем каталоге, например:
/myserver/releases/myrelease/... //this is my source webapp for: app, bin, src, tests/var/web directories
/myserver/shared/vendor/...// this is my vendor directory
Мой файл app / autoload. php такой:
use Doctrine\Common\Annotations\AnnotationRegistry;
use Composer\Autoload\ClassLoader;
/** @var ClassLoader $loader */
$loader = require __DIR__.'/../../../shared/vendor/autoload.php';
AnnotationRegistry::registerLoader([$loader, 'loadClass']);
return $loader;
Когда я запускаю команду из каталога выпуска:
php app/console myproject:mymodule:import
Консоль возвращает мне эту ошибку: Вы забыли выражение "use" для другого пространства имен? в / var / www/myproject/releases/myrelease/app/AppKernel.php: 42
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 /var/www/myproject/releases/myrelease/app/AppKernel.php:42
Stack trace:
#0 /var/www/myproject/shared/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(406): AppKernel->registerBundles()
#1 /var/www/myproject/shared/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(113): Symfony\Component\HttpKernel\Kernel->initializeBundles()
#2 /var/www/myproject/shared/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php(137): Symfony\Component\HttpKernel\Kernel->boot()
#3 /var/www/myproject/shared/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php(124): Symfony\Bundle\FrameworkBundle\Console\Application->registerCommands()
#4 /var/www/myproject/shared/vendor/symfony/symfony/src/Symfon in /var/www/myproject/releases/myrelease/app/AppKernel.php on line 42