项目中有多个package.json可以吗?我正在使用.NET MVC解决方案,它在根级别有一个package.json。我需要将Jasmine / Karma集成到解决方案中,这是我第一次进行这种集成。我在网上找到了Jasmine / Karma的示例项目,我能够在本地运行。这个项目有自己的package.json。
似乎将示例Jasmine / Karma示例项目的package.json文件与解决方案根级别的package.json分开维护是有用的,以提供更大的灵活性并允许相同的属性根据情境使用不同。
这是否有效或通常被认为是一种好的做法?或者我是否需要弄清楚如何将示例项目中package.json的内容合并到.NET MVC解决方案根级别的package.json中?
答案 0 :(得分:5)
我会说,通常不好的做法是拥有多个package.json。我只希望安装一次npm,并且必须处理两组依赖关系管理可能导致问题。
答案 1 :(得分:1)
在保持简单方面,只需维护单个package.json
文件就更容易了,但回购中的多个package.json
文件没有任何内在错误。有些公司确实使用mono-repos,因此拥有多个package.json
文件是完全合理的。
多个package.json
文件为您提供了运行不同/不兼容版本的依赖项的灵活性。作为一个实际示例,在我工作的一个项目中,我们有2个package.json
文件,一个用于主应用程序代码,另一个用于我们的BDD测试。我们在我们的BDD测试中使用黑猩猩,并且在最新的节点版本上运行它时遇到了问题,而我们不希望仅仅因为这个原因而保持应用程序的其余部分不会升级。我们还发现单个package.json
文件在最初合并时非常混乱。