npm、package.json 以及支持多个大版本的第三方库,每个版本的测试?

Posted

技术标签:

【中文标题】npm、package.json 以及支持多个大版本的第三方库,每个版本的测试?【英文标题】:NPM, package.json and supporting multiple major version of a third party library, testing each version? 【发布时间】:2019-02-06 20:38:47 【问题描述】:

  "name": "my-library",
  "devDependencies": 
    "3d-party": "^4.0.0"
  

假设my-library 应该支持3.x4.x 版本的3d-party 包。 my-library 已经过测试。

有什么我可以在本地运行的东西,比如 Travis CI:

运行npm install,有时需要特定版本(3.x4.x) 运行我的测试以确保 my-library 与两个版本都兼容

【问题讨论】:

【参考方案1】:

您必须复制 package.json 并将 3rd-party 版本更改为特定版本 - 然后运行 ​​npm install

确保删除 ^,因为它表示 - get latest version

所以你应该这样做"3d-party": "3.5.5"

要自动执行此操作,您可以使用 gulp 并使用其自己的特定 package.json 为每个 3rd 方部门创建一个项目文件夹

然后你编写一个 gulp 构建,将你的源代码复制到每个文件夹中并运行 npm install

然后你可以运行每个版本,看看它是否崩溃:)

【讨论】:

希望有一种自动化的方式吗? 你可以用 GULP 自动化它

以上是关于npm、package.json 以及支持多个大版本的第三方库,每个版本的测试?的主要内容,如果未能解决你的问题,请参考以下文章

npm install时不改变package-lock.json的做法

npm 在绝对路径中安装包(本地和 package.json)

npm包信息写入package.json文件时,-D和-S的区别

npm install 和npm install --save 以及npm install --save-dev区别

package.json的所有配置项及其用法,你都熟悉么

package.json文件快速入门详解