Symfony 2 - 如何删除一个bundle?

38

我的问题是如何删除我创建的bundle?

您可以使用此控制台命令创建bundle:

php app/console generate:bundle --namespace=Test/BlogBundle --format=yml

这很棒,但如果我需要删除这个bundle该怎么办呢? 是否有控制台命令可以删除我不再需要的bundle?

我知道当你从控制台创建新的bundle时:

1. create /src/Test/BlogBundle directory
2. change /app/config/routing.yml file to include routes
3. include your new bundle in /app/Resources/App.Kernel.php
4. I think there is something changed in /app/cache/...

现在,完全删除一个捆绑包的正确方法是什么?

问题在于,使用控制台生成这些捆绑包是一种“神奇”的方式,因此我不知道这个命令在文件夹结构和文件方面做了什么更改。


1
git reset --hard HEAD - edmondscommerce
1
最佳实践参见http://symfony.com/doc/current/cookbook/bundles/remove.html。 - Tejaswi Sharma
3个回答

64

基本上,这就是您概述的过程,只是顺序略有不同。

  1. 删除/src/Test/BlogBundle目录
  2. 更改/app/config/routing.yml文件以删除此bundle的路由
  3. /app/AppKernel.php 中删除您的新bundle
  4. 清除缓存(通过删除cache/{$env}或使用console cache:clear命令)

如果没有使用依赖管理器安装,则应该就这些了。


12
如果它是通过Composer安装的,我该如何摆脱依赖关系? - Peter Wooster
4
卸载某个包及其依赖项并更新其他依赖项:composer remove <whatever/package> --update-with-dependencies。 - Xosofox
这个解决方案提到了Composer,而Symfony文档没有。我认为这是一个有效的回应,+1。 - miltone

6

我知道我回答晚了,但 Symfony 有关于如何删除bundle的指南。这是我删除的方法。你可以使用相同的指南来删除你创建并想要现在移除的其他bundles。


0
删除Symfony 3(及更高版本)中的捆绑包的方法:
方法1: 1. 进入`composer.json`, 查找并删除捆绑包。 2. 运行`composer update` (它会自动删除捆绑包并清除缓存)
方法2: 运行 `composer remove alias/to/your/bundle` 例如:`composer remove nesbot/carbon`
就是这样。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接