如何移除捆绑
编辑本页警告:您正在浏览的文档欧宝官网下载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_user
FOSUserBundle)在配置文件中的字符串。
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
包目录中包含的文件。