AsseticBundle 从所有 Symfony 的版本中删除

Posted

技术标签:

【中文标题】AsseticBundle 从所有 Symfony 的版本中删除【英文标题】:AsseticBundle removed from all the Symfony's versions 【发布时间】:2016-03-09 21:11:44 【问题描述】:

我想知道为什么 AsseticBundle 已从 Symfony 的所有版本中删除。

我到处寻找,但没有找到任何网站谈论这个开始了几个星期的新闻。

最初,我以为他们删除了此捆绑包,因为存在需要几天时间才能修复的安全漏洞。

这个 Bundle 不能包含来自外部文件夹的 javascript 和 css 文件类型,我想确定这个 Bundle 是否会被 Symfony 中的另一个替换,或者我应该手动添加这个 Bundle。

谢谢

【问题讨论】:

Who said it has been removed? 在这个项目中他们不再使用它(在作曲家中)。link 那只是一个骨架应用程序 好吧,我可以再次手动添加 AsseticBundle 吗? 什么阻止了你? 【参考方案1】:

AsseticBundle 与新版本的框架 (2.8/3.x) 不兼容/维护。

见 Fabpot 的推文询问:Honest question: is #Assetic still relevant for #Symfony 3.0?

还有 PR remove AsseticBundle(你可以找到关于支持和反对删除 Assetic 的很好的讨论)。

还可以查看Symfony and Asset Management 上的这篇精彩文章,该文章澄清并否定了所有讨论。

希望有帮助

【讨论】:

【参考方案2】:

虽然 Symfony 从 2.8 版本开始不支持资产,你仍然可以通过运行来安装它:

composer require symfony/assetic-bundle

然后像这样在 AppKernel.php 中启用捆绑包:

new Symfony\Bundle\AsseticBundle\AsseticBundle()

【讨论】:

以上是关于AsseticBundle 从所有 Symfony 的版本中删除的主要内容,如果未能解决你的问题,请参考以下文章

Symfony 2.8:ResourceInterface::isFresh() 自 2.8 起已弃用

将 Gaufrette 流包装器与 AsseticBundle 一起使用

为所有从包路由导入的前缀添加前缀时,如何在 Symfony 包的模板中生成 URL?

如何销毁 Symfony 2 中的所有会话

从 Symfony 3.4 升级到 4:升级 symfony 时出错

Symfony Doctrine ORM ManyToMany - 带有标签的博客 - 我没有从博客中获取所有标签,没有延迟加载