避免在npm/package.json中发布不稳定的mongoose
如何避免使用npm安装不稳定的mongoose版本 运行避免在npm/package.json中发布不稳定的mongoose,npm,Npm,如何避免使用npm安装不稳定的mongoose版本 运行npm update后,我在我的节点应用程序中收到以下警告: # !!! MONGOOSE WARNING !!! # # This is an UNSTABLE release of Mongoose. # Unstable releases are available for preview/testing only. # DO NOT run this in production. 在我的package.json文件
npm update
后,我在我的节点应用程序中收到以下警告:
# !!! MONGOOSE WARNING !!!
#
# This is an UNSTABLE release of Mongoose.
# Unstable releases are available for preview/testing only.
# DO NOT run this in production.
在我的package.json文件中,我有以下条目:
"mongoose": "^3.8.8"
看看这个答案:
建议是,如果指定“*”
作为版本,则将始终更新到最新的稳定版本
在您的情况下,我建议先卸载mongoose软件包,然后重新安装mongoose
守则:
npm uninstall mongoose
(change "mongoose":"^3.8.8" to "mongoose":"3.8")
npm install
Mongoose没有遵循标准的npm实践,因此他们不稳定的构建被npm认为是稳定的。基本上,他们发布的3.9是一个不稳定的版本,这就是导致警告的原因 我的建议是,您不再相信他们会遵守这些约定,只需将版本锁定在您的包中即可。json:
"mongoose": "3.8"
您可能从未安装过3.8.8(应该是稳定的),而是安装了3.9.x版本 实际上,在package.json中包含^3.8.8时,使用^3.9.x也将安装3.9.x 在您的情况下,您可以通过删除^来修复3.8.8(或3.8.18,它在今天是稳定的,如其他答案中所述),或者使用th~字符,它将只匹配最低版本部分的新版本 因此,以下内容将匹配(x为最新版本): 因为3.9被认为是不稳定的,但是^将转到3.9,这就是问题所在 有关版本的详细说明,请参见: 和使用
npm view mongoose versions
要查看可用的版本,请参阅。G当4退出时,3.8中的最新版本是什么
对于~3.8,它将始终保持3.8中的最新版本(更新时),但一旦4.0发布,您将需要手动更新它
另外:您可以直接编辑package.json,然后运行
npm update
无需卸载/重新安装。3.8.8是一个稳定的版本吗?您可能是对的,3.8.x不稳定,这可能会导致警告。是否有事实上的方法只安装稳定版本,或者这取决于正在安装的npm库。符号*允许您始终安装最新的稳定版本。或者,您可以使用~或^符号来匹配特定版本。请参阅,您的意思是将my package.json设置为“mongoose”:“*”?首先将package.json设置为
“mongoose”:“*”
,然后运行npm install
。再想一想,npm update--save
会在软件包已经存在的情况下更新它,而不是在你卸载它的情况下。这就是我所拥有的,我仍然不稳定好,我修改了我的答案,将Mongoose设置为3.8,而不是*
npm update