0

运行后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
...

这不可能。解决此问题的最佳方法是什么?

4

1 回答 1

0

我有一个类似的问题。我经常在注册表之间切换。解决方案是npm cache clear在安装/收缩包装之前运行。

于 2017-10-07T13:24:57.337 回答