【发布时间】:2014-11-08 08:58:26
【问题描述】:
我开发了一个包,它不是一个独立的 Symfony2 应用程序,而只是框架和最终应用程序之间的一个层,负责一些常见任务。
当我创建一个包含适当类的 Bundle/Command/SomeCommand.php 时,该命令在 Symfony 中不可用。但是,当我将相同的命令复制到“最终”包中时,该包扩展了“父”包中的类,该命令在那里可用。
我怀疑捆绑包必须在内核或类似的地方注册,但我正在努力寻找任何相关信息,所以任何想法都将不胜感激!
谢谢!
【问题讨论】:
-
您可以将您的命令注册为服务。 symfony.com/doc/current/cookbook/console/… 。或者,您可以将 MyUtilBundle 类添加到您的 Bundle 目录并将其包含在您的 AppKernel 中。这将自动在 Commands 目录中注册任何命令。
-
你在
app/AppKernel.php注册了这两个包吗? -
这是真正的问题,谢谢!当它也在应用程序的 parameters.yml 组件部分中定义时,我曾经在 AppKernel 中使用捆绑包。但是,依赖包(Cerad 描述的 MyUtilBundle)在 AppKernel 中没有问题,所以一旦我将它添加到那里,它就很好用!
标签: php symfony console command