当我为我的项目创建一个 docker 入口点脚本时,我运行:
php /bin/composer install --no-dev
但是 thhat 抛出了一个异常,即:
致命错误:未捕获的 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 AjglTwigExtensionSymfonyBundleAjglBreakpointTwigExtensionBundle();
}
return $bundles;
}
这个捆绑包我在dev
上使用 int,test
使用它的环境。我构建的容器供生产使用。
因此,我想以某种方式让脚本处理程序在作曲家执行时,它们在prod
环境中运行,而不是dev
环境以抑制错误消息?
我想这是这个问题的副本。
只需将SYMFONY_ENV
var 设置为prod
并使用composer install
:SYMFONY_ENV=prod php /bin/composer install --no-dev