虽然我熟悉composer.json
的基础知识并在require
密钥下指定依赖项,但我还不太了解require-dev
的目的 - Composer的文档说明:
列出开发此软件包或运行测试所需的软件包, 通过安装根包的开发需求 默认。安装或更新都支持--no-dev选项 防止安装dev依赖项。
在摘要中它是有道理的,但是当我需要这个功能时,我很难想象这些情况。
require-dev
的实际用例是什么?require-dev
但不在require
?答案 0 :(得分:11)
一个常见的例子是phpunit,您需要在开发中运行测试套件,但通常在生产中不需要。它也可以是构建工具或类似的东西。将所有内容都放入require中并没有太大的危害,只是意味着你的prod机器上安装了更多代码,并且可能会根据你的工作方式减慢你的构建速度。