Node.js 如何告诉node使用特定安装的软件包版本?

Node.js 如何告诉node使用特定安装的软件包版本?,node.js,npm,Node.js,Npm,如果我的系统上安装了1.1版和1.2版的package foo,而bar.js需要package foo,那么有没有办法调用node bar.js,以便node使用foo的1.1版?NPM项目本地包留在node_模块中,除非您自己明确更新它们,否则不会更新它们。您可以使用NPM的语义版本控制在每个项目的基础上管理依赖项的粒度。这是一张semver备忘单: 考虑到这一点,如果您正在全局安装模块,则出现故障,除非软件包所有者告诉您,否则您不应该这样做,例如Grunt或Angular CLI。如果您正

如果我的系统上安装了1.1版和1.2版的package foo,而bar.js需要package foo,那么有没有办法调用node bar.js,以便node使用foo的1.1版?

NPM项目本地包留在node_模块中,除非您自己明确更新它们,否则不会更新它们。您可以使用NPM的语义版本控制在每个项目的基础上管理依赖项的粒度。这是一张semver备忘单:

考虑到这一点,如果您正在全局安装模块,则出现故障,除非软件包所有者告诉您,否则您不应该这样做,例如Grunt或Angular CLI。如果您正在使用全局模块,而您不需要这样做,那么您应该解决这个问题


如果您发现语义版本控制导致项目中的依赖项发生冲突,例如foo要求bar 1.0,faa要求bar 1.1,或者您担心破坏依赖项更改的风险,看看。

除非必须,否则不要使用全局npm模块-然后可以为包中的每个包指定特定版本。json。@brandonscript node是否使用了在./package.json中指定的版本?我想只有npm在安装时才使用这个。是的–@brandonscript lol。很多谷歌搜索都没有发现,可能是因为我在谷歌搜索时假设情况并非如此。