使用package.json和NPM如何使用命令行安装最高版本的主要版本1或主要版本2?
在这种情况下,我想将软件包从版本2.x.x降级到1.x.x.在这种情况下,我希望x是最大的数字。
类似的东西:
npm install foo@latest:1
我不确定。我的最终目标是将正确的数据输入package.json,这样我就不会跳转到2.0.0版本,并且始终保持最高的1.x.x版本。
我可以手动插入package.json吗?然后运行npm install foo
?
不幸的是the NPM article on semver没有多大帮助。
答案 0 :(得分:3)
如果您希望始终为特定版本选择最新且最好但不想跳转主版本,那么您可以在package.json中使用^
前缀。
示例:
"dependencies": {
"nodemailer": "^2.3.2"
},
注意: nodemailer的最新主要版本是版本4
。
这将解析为nodemailer@2.7.2
,这是版本2
的最后一个版本。
执行npm install
会产生以下内容
<强>输出:强>
npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated CSSselect@0.3.11: the module is now available as 'css-select'
npm WARN deprecated CSSwhat@0.4.7: the module is now available as 'css-what'
nodemailer@2.7.2 node_modules/nodemailer
<强>参考:强> http://fredkschott.com/post/2014/02/npm-no-longer-defaults-to-tildes/