所以我无法理解这一点。我们有一个API作为作曲家项目。 不,我们以模块化方式为此API添加功能,为每个模块创建单独的编写器项目。
但是如何在开发时解决依赖关系?每个模块都需要访问"核心" API项目能够测试代码。
目前的API还不是真正的作曲家包。但我最初的想法是为我即将开发的模块创建一个新的包,然后为" core"添加一个dev-dependency。 API。
或者我应该怎么做?
答案 0 :(得分:0)
你的模块是独立的吗?没有“核心”包可用吗? 我想不是,所以“Core”模块是每个模块的依赖项。 因此,“you / core”包需要位于每个模块的composer.json的require块中。
请注意,这不是一个开发依赖,因为我认为你的模块在没有核心软件包的情况下是不可用的。
Phpunit是一个经典的dev依赖项,因为如果没有phpunit,你的模块的功能仍然有用。
测试&开发模块,您将在模块项目文件夹中运行composer install
以将所有依赖项提取到供应商文件夹中。然后,您可以开发并拥有所有依赖项。但是,您需要使用composer自动加载器。 F.e在你的phpunit.xml.dist中。
别忘了将vendor
添加到.gitignore