为什么npm要从private registry而不是registry.npmjs.org安装包

为什么npm要从private registry而不是registry.npmjs.org安装包,npm,npm-install,Npm,Npm Install,我已在我的项目目录中创建了一个.nmprc文件,如下所示: @mycompany:registry=https://registry.mycompany.com/ 但是,当我执行npm安装时我会看到不以@mycompany开头的包依赖项也会从https://registry.mycompany.com/而不是来自https://registry.npmjs.org/ 这是我在package lock.json中看到的: "yaml": { "version": "1.7.2", "re

我已在我的项目目录中创建了一个
.nmprc
文件,如下所示:

@mycompany:registry=https://registry.mycompany.com/
但是,当我执行
npm安装时
我会看到不以
@mycompany
开头的包依赖项也会从
https://registry.mycompany.com/
而不是来自
https://registry.npmjs.org/

这是我在
package lock.json中看到的:

"yaml": {
  "version": "1.7.2",
  "resolved": "https://registry.mycompany.com/yaml/-/yaml-1.7.2.tgz",
  "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
  "dev": true,
  "requires": {
    "@babel/runtime": "^7.6.3"
   }

请告诉我此处缺少的设置。

由于您使用的是.npmrc文件,因此命令
npm install
将尝试查找公司注册表中的所有软件包
https://registry.mycompany.com/

如果要安装所有其他软件包,则需要按照以下步骤更新.npmrc文件

您当前的.npmrc文件:

@mycompany:registry=https://registry.mycompany.com/

更新版本

@mycompany:registry=https://registry.mycompany.com/

注册表=https://registry.npmjs.org

如果您运行
npm install
,它将从您的公司注册中心安装带有
@mycompany
标志的所有软件包,并尝试从公共npm注册中心安装所有其他软件包


如果这对您有帮助,请告诉我。

这可能只是mac(可能还有linux)用户的问题吗?