0

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

php /bin/composer install --no-dev

但这会引发一个异常,即:

致命错误:未捕获的 Symfony\Component\Debug\Exception\ClassNotFoundException:试图从命名空间“Ajgl\Twig\Extension\SymfonyBundle”加载类“AjglBreakpointTwigExtensionBundle”。

初始化捆绑包的代码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;
 }

这个包我使用 intdevtest它使用的环境。我构建的容器用于生产。

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

4

1 回答 1

2

我想这是这个问题的重复。

只需将SYMFONY_ENVvar 设置为prod然后使用composer installSYMFONY_ENV=prod php /bin/composer install --no-dev

于 2017-11-28T14:35:32.603 回答