如何移除捆绑

编辑本页

警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 3.3,现已不再维护。

本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。

如何移除捆绑

1.中的Bundle取消注册AppKernel

要将包与框架断开连接,应将包从AppKernel: registerBundles ()方法。包可能会在美元的包数组声明或在后面的语句中添加到它,如果bundle只在开发环境中注册:

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/ / app / AppKernel.php/ /……AppKernel扩展内核公共函数registerBundles()数组Acme \ DemoBundle \ AcmeDemoBundle ());如果(in_array (->getEnvironment (),数组“开发”“测试”))){//注释或删除这一行:// $bundles[] = new Acme\DemoBundle\AcmeDemoBundle();/ /……}}}

2.删除Bundle配置

组件中的任何配置和ob娱乐下载路由配置,现在Symfony已经不知道这个包了应用程序/配置引用包的目录。

2.1移除Bundle路由

一些捆绑包要求您导入路由配置。检查对包的引用应用程序/配置/ routing.yml而且应用程序/配置/ routing_dev.yml.如果你发现任何引用,完全删除它们。

2.2移除Bundle配置

类中的一个包包含配置app / config / config * .yml文件。请确保从这些文件中删除相关配置。您可以通过查找acme_demo(或者不管bundle的名称是什么,例如:fos_userFOSUserBundle)在配置文件中的字符串。

3.从文件系统中移除Bundle

现在您已经删除了应用程序中对该bundle的所有引用,接下来应该从文件系统中删除该bundle。bundle将位于“src/”,例如src / Acme / DemoBundle目录中。您应该删除这个目录,以及现在为空的所有父目录(例如。src / Acme /).

提示

如果不知道包的位置,可以使用getPath ()方法获取bundle的路径:

1 2
转储(->容器->get (“内核”->getBundle (“AcmeDemoBundle”->getPath ());();

3.1移除捆绑资产

在web/目录中删除bundle的资产(例如:web /包/ acmedemo用于AcmeDemoBundle)。

4.删除其他bundle中的集成

有些包依赖于其他包,如果您删除其中一个,另一个可能无法工作。确保没有其他捆绑包,第三方或自制的,依赖于您要删除的捆绑包。

提示

如果一个包依赖于另一个包,在大多数情况下,这意味着它使用该包中的某些服务。搜索bundle别名字符串可以帮助你发现它们(例如。acme_demo依赖于AcmeDemoBundle的bundle)。

提示

如果第三方包依赖于另一个包,则可以在composer.json包目录中包含的文件。

此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。