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.x
和4.x
版本的3d-party
包。 my-library
已经过测试。
有什么我可以在本地运行的东西,比如 Travis CI:
运行npm install
,有时需要特定版本(3.x
和4.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的区别