启用Symfony注释的实际作用是什么



Symfony文档说,要启用注释,应该运行以下命令。

$ composer require annotations

使用此命令启用注释的幕后实际操作是什么?

这让我很困惑,因为通常我会使用之类的东西

composer require foo/baz

安装foo/baz程序包——但annotations不是程序包——或者至少在我看来不像程序包。程序包通常有namespace/packagename结构,annotations是一个单词。

此外,我在运行该命令之前和之后,将composer.json文件和onyl不同的apepars区分为在sensio/framework-extra-bundle上碰撞次要版本号——(这根本不重要,因为^5.1SemVer翻译为5.latestst——对吧?)

$ diff composer.json composer.json.orig 
8c8
<         "sensio/framework-extra-bundle": "^5.2",
---
>         "sensio/framework-extra-bundle": "^5.1",

那么这个composer require annotations实际上是如何工作的呢?它做了哪些更改来启用路由注释呢?

"annotations"是Symfony Recipe别名。

转到Symfony食谱网站:https://flex.symfony.com/并搜索"注释"。您可能会发现两个包,您感兴趣的是第二个:sensio/framework extra bundle

当您运行composer require annotations时,composer会安装程序包(与执行composer require sensio/framework-extra-bundle时完全相同,或者如果您已经拥有它,则会更新它),并且它还运行与其关联的配方(取决于您的版本,它在这里:https://github.com/symfony/recipes/tree/master/sensio/framework-extra-bundle)

这个配方实际上是将一堆文件复制到你的工作目录中,这样配置就可以自动完成,你就不必麻烦了。一些配方添加了一个新的控制台命令、添加配置文件或二进制。。。它相当强大。

所有这些更改都会写入相对的新symfony.lock配置文件中,您可以在其中找到已运行的带有一些信息的配方。

注意:如果使用VCS ,则应该提交symfony.lock文件

相关内容

  • 没有找到相关文章

最新更新