如何解决bcrypt@2.0.1尝试从错误的URL结果404下载如何解决?
我正在尝试在新服务器上恢复古老的应用程序。该应用程序在流星1.5.1和nodejs 4.8.4上运行。
在package.json
中,有"bcrypt": "^2.0.1",
项。当我尝试通过运行meteor npm install --save
安装软件包时,尝试从错误的URL下载bcrypt,结果为404。以下是错误输出。.
# meteor npm install --save
> bcrypt@2.0.1 install /my-app/node_modules/bcrypt
> node-pre-gyp install --fallback-to-build
node-pre-gyp ERR! Tried to download(404): https://github.com/kelektiv/node.bcrypt.js/releases/download/v2.0.1/bcrypt_lib-v2.0.1-node-v72-linux-x64-glibc.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for bcrypt@2.0.1 and node@12.18.4 (node-v72 ABI,glibc) (falling back to source compile with node-gyp)
make: Entering directory '/my-app/node_modules/bcrypt/build
从输出中可以看到,它正在尝试从不存在的(错误的)URL下载。正确的网址应为:https://github.com/kelektiv/node.bcrypt.js/releases/download/v2.0.1/bcrypt_lib-v2.0.1-node-v46-linux-x64-glibc.tar.gz 因为nodejs 4.8.4的模块版本是 v46 。我不确定为什么要先下载 node@12.18.4 。
问题是后备版本甚至没有编译。.到处都是C ++错误。我认为,如果我能以某种方式解决预构建的二进制问题,就可以避免后备构建问题?如何指向正确的网址,或者至少可以事先下载tar.gz
文件并将其放置在某处?
解决方法
我终于找到了答案!我以与预期不同的用户身份运行meteor npm install --save
命令。结果,meteor npm install --save
命令在该用户的PATH
中下载了整个新的nodejs版本,并尝试安装软件包。在正确的用户环境中运行meteor npm install --save
命令即可解决问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。