0

我刚刚将 Symfony 升级到 2.0.12 版本。在快速查看 deps 文件后,我意识到 Assetic 被声明了两次,并且有两个不同的版本。

[AsseticBundle]
    git=http://github.com/symfony/AsseticBundle.git
    target=/bundles/Symfony/Bundle/AsseticBundle
    version=v1.0.1

[assetic]
    git=http://github.com/kriswallsmith/assetic.git
    version=v1.0.3

这是为什么 ?是有具体原因还是疏忽?

4

2 回答 2

3

asseticAsseticBundle是两个不同的东西。

assetic是 . 使用的底层库AsseticBundle。它是一个独立的库,不直接依赖Symfony。它可以被任何 PHP 项目使用。

另一方面,捆绑包提供了与库的紧密集成,Symfony因此您无需编写大量代码即可使用它。因为它是一个捆绑包,AsseticBundle所以FrameworkBundle它必须与Symfony.

所以,assetic不依赖任何东西。AsseticBundle取决于assetic但也取决于FrameworkBundle哪个是Symfony框架的核心。

您可以通过使用的 git repo url 看到这些是两个不同的东西:

assetic=> http://github.com/kriswallsmith/assetic.git
AsseticBundle => http://github.com/symfony/AsseticBundle.git

这是两个不同的回购,所以两个不同的东西,但紧密耦合在一起。从某种意义上说,两者都可以打包在一起,但是有两个不同的实体可以在Symfony.

PS被@elnur打败了几秒钟:)

问候,
马特

于 2012-03-21T19:50:36.763 回答
2

其中一个是您可以在普通 PHP 中使用的库,另一个是用于将其与 Symfony2 集成的捆绑包。

于 2012-03-21T19:46:17.557 回答