我遇到了一个问题,我尝试更新远程服务器上的软件包,特别是mongoose软件包。
如果我运行npm mongoose --version
,则会返回版本号1.3.10
。但是,在package.json
中,指定的版本为^2.7.4
。
我尝试运行npm update
并且不会将程序包更新为^2.7.4
,因为npm mongoose --version
的版本仍会返回1.3.10
当我通过npm uninstall mongoose
卸载软件包时,它将返回unbuild mongoose@2.9.10
,但如果我运行npm mongoose --version
,它仍会输出1.3.10
。我尝试按npm install mongoose@2.7.4
按特定版本号重新安装,但npm mongoose --version
仍会返回1.3.10
我确保mongoose
包不是全局包,我尝试通过卸载所有包并运行node_modules
来重建整个npm install
文件夹,但我的版本号仍为1.3.10
。
知道它可能是什么吗?
如果有帮助,远程服务器正在Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-38-generic x86_64)
上运行。
答案 0 :(得分:0)
因此npm --version
命令实际上返回npm
的版本号。
您真正想要的是使用npm list mongoose
列出包mongoose
的版本号(npm list
将显示所有包含版本和npm list -g
的包的列表将显示所有全球包及其版本号的列表)
修改强>
您也可以使用命令npm show {pkg} version
,例如npm show mongoose version