运行npm shrinkwrap
后,我发现我们有很多对localhost的引用:
egrep localhost npm-shrinkwrap.json
"resolved": "http://localhost:4873/constants-browserify/-/constants-browserify-0.0.1.tgz"
"resolved": "http://localhost:4873/https-browserify/-/https-browserify-0.0.0.tgz"
"resolved": "http://localhost:4873/path-browserify/-/path-browserify-0.0.0.tgz"
"resolved": "http://localhost:4873/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz"
"resolved": "http://localhost:4873/ripemd160/-/ripemd160-0.2.0.tgz"
"resolved": "http://localhost:4873/sha.js/-/sha.js-2.2.6.tgz"
"resolved": "http://localhost:4873/shimmer/-/shimmer-1.1.0.tgz"
"resolved": "http://localhost:4873/tty-browserify/-/tty-browserify-0.0.0.tgz"
"resolved": "http://localhost:4873/utils-merge/-/utils-merge-1.0.0.tgz"
"resolved": "http://localhost:4873/vm-browserify/-/vm-browserify-0.0.4.tgz"
原来这些引用也在原始node_modules中:
egrep 'localhost:4873' node_modules/ -r
node_modules/path-browserify/package.json: "_resolved": "http://localhost:4873/path-browserify/-/path-browserify-0.0.0.tgz",
node_modules/utils-merge/package.json: "_resolved": "http://localhost:4873/utils-merge/-/utils-merge-1.0.0.tgz",
node_modules/ripemd160/package.json: "_resolved": "http://localhost:4873/ripemd160/-/ripemd160-0.2.0.tgz",
node_modules/constants-browserify/package.json: "_resolved": "http://localhost:4873/constants-browserify/-/constants-browserify-0.0.1.tgz",
node_modules/tty-browserify/package.json: "_resolved": "http://localhost:4873/tty-browserify/-/tty-browserify-0.0.0.tgz",
node_modules/vm-browserify/package.json: "_resolved": "http://localhost:4873/vm-browserify/-/vm-browserify-0.0.4.tgz",
node_modules/shimmer/package.json: "_resolved": "http://localhost:4873/shimmer/-/shimmer-1.1.0.tgz",
node_modules/https-browserify/package.json: "_resolved": "http://localhost:4873/https-browserify/-/https-browserify-0.0.0.tgz",
node_modules/pbkdf2-compat/package.json: "_resolved": "http://localhost:4873/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz",
node_modules/sha.js/package.json: "_resolved": "http://localhost:4873/sha.js/-/sha.js-2.2.6.tgz",
所以这意味着我在安装时会遇到大量的提取和重试错误:
npm ERR! fetch failed http://localhost:4873/constants-browserify/-/constants-browserify-0.0.1.tgz
npm WARN retry will retry, error on last attempt: Error: connect ECONNREFUSED 127.0.0.1:4873
npm ERR! fetch failed http://localhost:4873/https-browserify/-/https-browserify-0.0.0.tgz
npm WARN retry will retry, error on last attempt: Error: connect ECONNREFUSED 127.0.0.1:4873
...
这不对。解决这个问题的最佳方法是什么?
答案 0 :(得分:0)
我有类似的问题。我经常在注册表之间切换。解决方案是在安装/收缩包装之前运行npm cache clear
。