NodeJS 使用NPM安装最高的semver major版本X

apeeds0o  于 2023-11-17  发布在  Node.js
关注(0)|答案(2)|浏览(148)

使用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没有太大的帮助。

gmxoilav

gmxoilav1#

如果你想总是为特定版本选择最新和最好的版本,但不想跳过主要版本,那么你可以在package.json中使用^前缀。
示例如下:

"dependencies": {
    "nodemailer": "^2.3.2"
  },

字符串

**注意:**nodemailer的最新主要版本是4版本。

这将解析为[[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection),这是2版本的最后一个版本。
执行npm install会产生以下结果

输出:

npm WARN deprecated [email protected]: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated [email protected]: the module is now available as 'css-select'
npm WARN deprecated [email protected]: the module is now available as 'css-what'
[email protected] node_modules/nodemailer

参考:http://fredkschott.com/post/2014/02/npm-no-longer-defaults-to-tildes/

kdfy810k

kdfy810k2#

如果您想手动执行此操作:

npm install <package-name>@^xx

字符串
例如:npm install react@^18将安装major version 18的最新minor version。

相关问题