当我 运行 composer 命令时,Symfony 传递 -env 参数

Symfony pass -env parameter when I run composer commands

当我为我的项目创建 docker 入口点脚本时,我 运行:

php /bin/composer install --no-dev

但是抛出的异常是:

Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "AjglBreakpointTwigExtensionBundle" from namespace "Ajgl\Twig\Extension\SymfonyBundle".

AppKernel.php 上初始化包的代码是:

public function registerBundles()
 {
        //Other Bundle initialization
        if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
            $bundles[] = new Ajgl\Twig\Extension\SymfonyBundle\AjglBreakpointTwigExtensionBundle();

       }

       return $bundles;
 }

我在 devtest 环境中使用了这个包。我构建的容器用于生产。

因此,我想以某种方式让 ScriptHandlers 在 composer 执行时,在 prod 环境而不是 dev 环境中 运行 来抑制错误消息?

我想这是 问题的重复。

只需将 SYMFONY_ENV 变量设置为 prod 并使用 composer install 然后: SYMFONY_ENV=prod php /bin/composer install --no-dev