Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Npm package-lock.json解析的链接指向本地工件URL,而不是全局设置注册表_Npm_Npm Install_Package.json_Package Lock.json - Fatal编程技术网

Npm package-lock.json解析的链接指向本地工件URL,而不是全局设置注册表

Npm package-lock.json解析的链接指向本地工件URL,而不是全局设置注册表,npm,npm-install,package.json,package-lock.json,Npm,Npm Install,Package.json,Package Lock.json,我有一个.npmrc文件,其中包含: registy=http://artifacts.sample.com/artifactory/api/npm/ package-lock.json包含依赖项的已解析字段,如下所示: "dependencies": { "acorn": { "version": "5.7.3", "resolved": "http://artifacts.sample.com/artifactory/api/npm/acorn/-/acor

我有一个.npmrc文件,其中包含:

registy=http://artifacts.sample.com/artifactory/api/npm/
package-lock.json包含依赖项的已解析字段,如下所示:

"dependencies": {
    "acorn": {
      "version": "5.7.3",
      "resolved": "http://artifacts.sample.com/artifactory/api/npm/acorn/-/acorn-5.7.3.tgz",
      "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
      "dev": true
    }
现在,当我进行npm安装时,它将package-lock.json解析字段更改为指向本地工件,而不是.npmrc中指定的工件,如:

"dependencies": {
    "acorn": {
      "version": "5.7.3",
      "resolved": "http://localrepo.sample.com/artifactory/api/npm/acorn/-/acorn-5.7.3.tgz",
      "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
      "dev": true
    }
我们有本地化的代码,这将拒绝生活在世界另一端的人的访问,他们的工件URL指向其他地方,或者只是更改package-lock.json文件,让他们指向他们的本地URL,我们将始终更改package-lock.json文件

我也有“dev”和“integrity”方面的问题,但它们是使用

我使用的是node和npm的最新版本

node -v
v10.15.3

npm -v
6.9.0

有什么办法可以避免这种情况吗?

根据我自己的经验。如果设置了默认注册表,package-lock.json中的“resolved”字段将无效。我只是关注了ArtifactoryNPM注册表


或者,一个简单的技巧是更新主机文件(例如/etc/hosts),以确保永远无法访问“已解析”字段url,这将帮助您观察npm行为。

根据我自己的经验。如果设置了默认注册表,package-lock.json中的“resolved”字段将无效。我只是关注了ArtifactoryNPM注册表

或者,一个简单的技巧是更新主机文件(例如/etc/hosts),以确保永远无法访问“已解析”字段url,这将帮助您观察npm行为

npm config set registry https://artifactory.my.com/artifactory/api/npm/npm-repo/
npm login
npm config set //artifactory.my.com/artifactory/api/npm/npm-repo/:always-auth=true