`npm install`을 실행하면`ERR! 코드 EINTEGRITY` (npm 5.3.0)


134

실행하는 동안이 오류가 발생합니다 sudo npm install. 내 서버에서 npm이 이전에 설치되었습니다. package-lock.json파일 삭제를 시도 하고 실행 npm cache clean --force했지만 작동하지 않았습니다.

내 npm 버전은 5.3.0입니다.

오류:

npm ERR! code EINTEGRITY
npm ERR! sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== integrity checksum failed when using sha512: wanted sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== but got sha512-WXI95kpJrxw4Nnx8vVI90PuUhrQjnNgghBl5tn54rUNKZYbxv+4ACxUzPVpJEtWxKmeDwnQrzjc0C2bYmRJVKg==. (65117 bytes)

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/ubuntu/.npm/_logs/2017-11-29T05_33_52_182Z-debug.log

특히 연결 에 문제 있는 경우 문제의 원인을 회피하려면 아래 솔루션을 참조하십시오 .
SherylHohman

제 경우에는 단순히 명령을 다시 실행하여 작동했습니다!
kds23

1
다음 두 명령을 실행하면 문제가 해결되었습니다. $ rm -rf package-lock.json node_modules $ npm install
Rao

답변:


200

참조 https://github.com/npm/npm/issues/16861를

이것은 나를 위해 일했습니다.
npm cache verify

그런 다음 다시 실행했습니다.
npm install -g create-react-app

예상대로 설치되었습니다. 문제가 해결되었습니다.


github 문제에 언급 된 다른 솔루션 은 다음과 같습니다.

npm cache clean --force

또는

Users%username%\AppData\Roaming(Windows 7) 에서 npm 및 npm-cache 폴더 삭제 및 실행npm install

또는

다음을 통해 npm 업데이트 npm i -g npm

또는

지우다 package-lock.json

또는

npm cache verify

또는

npm cache clean

또는

문제를 해결하려면 다음 단계를 수행하십시오.

  1. 모든 오래된 패키지 및 업데이트 테마 찾기 :
    npm outdated -g
    sudo npm i -g outDatedPKG
  2. 다음을 사용하여 npm을 최신 버전으로 업그레이드하십시오.
    sudo npm i -g npm
  3. package-lock.json파일을 삭제 합니다.
  4. _cacache에서 디렉토리 삭제 ~/.npm: npm cache verify
  5. 오류가 발생할 때마다 2 단계와 3 단계를 수행하십시오.
  6. 여전히 오류가 발생하면 npm의 캐시를 지 웁니다.
    npm cache clean --force

또는

  1. 에 프록시 추가 .npmrc~디렉토리 :

proxy=http://localhost:8123
https-proxy=http://localhost:8123

  1. 다시 시도하십시오! 느린 인터넷 연결과 검열로 인해이 추악한 문제가 발생할 수 있습니다.

또는

npm cache clear --force && npm install --no-shrinkwrap --update-binary

또는

npm config set package-lock false


1
감사합니다! 그것은 매우 도움이되었고 주어진 옵션 중 일부를 선택하여 문제를 해결했습니다.
jfajunior

슈퍼 !! 너무 기뻐요 :-)
SherylHohman

3
Sheryl, 먼저 시간을내어 답변 해 주셔서 감사합니다. 당신의 답변이 사람들에게 도움이 되었음이 분명합니다. 이러한 각 대안이 무엇을하는지, 그리고 다른 대안이 작동하지 않는데 왜 작동 할 수 있는지 물어볼 수 있습니까? 감사!
Andres F.

1
@AndresF. 나는 원사의 하복부가 어떻게 작용하는지, 또는 어떤 방법이 다른 것보다 언제 / 왜 작용하는지에 대해 깊은 이해가 없습니다. 어떤 경우에는 본질적으로 동일한 작업을 수행하지만 다른 방식으로 트리거합니다. 나는이 모든 솔루션이 제시된 github 문제에 연결했습니다. 그것은 내 대답의 컴파일 된 목록의 소스입니다. 나는 yarn과 npm의 하복부에 대한 연구를 제안하거나 필요한 경우 개별 저자에게 연락하는 github 문제를 확인하는 것이 좋습니다.
SherylHohman

로컬 시스템의 노드 js 버전에서 업데이트하는 경우이 오류가 발생합니다.
gnganpath

44

package-lock.json 파일을 삭제하고 설치를 시도하십시오.


이 의견에 감사드립니다. Netlify에 GatsbyJS 사이트를 배포 할 때 문제를 해결하는 데 도움이되었습니다.
sathishpaul

위의 모든 것을 시도했고 이것이 해결책이었습니다!
Adam Boczek

예 package-lock.jason을 삭제하고 npm install
CJM

24

실제로 위의 내용은 서버 측의 네트워크 연결과 관련이 있습니다. 서버에서 연결 상태가 좋으면 npm 설치가 잘되고 오류가 발생하지 않았습니다.


1
그것은 확실히 연결 문제, 그래서 광산은 VPN 연결로 전환 한 후 일
bmukorera

13

내 문제는 두 가지였습니다.

  1. 잘못된 package-lock.json 파일
  2. npm-shrinkwrap.json과 package-lock.json 파일의 존재

내가 한 일은 :

  1. package-lock.json 파일 삭제
  2. npm-shrinkwrap.json 파일 삭제
  3. npm 설치를 다시 실행했습니다 (좋은 패키지 잠금 파일을 다시 생성 함).

내 오류를 수정했습니다!


AWS Codebuild에서 빌드하는 데이 문제가있었습니다. 이것은 나를 위해 일했습니다. 감사.
버티

11

문제는 실제로 package-lock.json 다른 분기의 작동 버전으로 교체 한 후에 작동했습니다.

흥미로운 것은 차이를 보는 것입니다.

차이

따라서 package-lock.json다운로드하는 파일이 변조되지 않았는지 확인 하기 위한 무결성 체크섬 이 있습니다. 어떻게 든 무결성 체크섬이 package-lock.jsonSHA-512 체크섬 대신 SHA1 로 대체되었습니다 . 나는 이것이 어떻게 일어 났는지 전혀 모른다.

다른 브랜치에 작동하는 버전이없는 경우 . 메시지 고려

npm ERR! code EINTEGRITY
npm ERR!
  sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==
integrity checksum failed when using sha512: wanted
  sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==
but got
  sha512-WXI95kpJrxw4Nnx8vVI90PuUhrQjnNgghBl5tn54rUNKZYbxv+4ACxUzPVpJEtWxKmeDwnQrzjc0C2bYmRJVKg==
. (65117 bytes)

에서 처음 두 개의 체크섬으로 패키지를 찾습니다 package-lock.json.

sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==

세 번째 체크섬을 "integrity"필드에 넣습니다.

sha512-WXI95kpJrxw4Nnx8vVI90PuUhrQjnNgghBl5tn54rUNKZYbxv+4ACxUzPVpJEtWxKmeDwnQrzjc0C2bYmRJVKg==

자세한 설명은 여기에 있습니다 .


package-lock.json 파일은 어디에 있습니까?
Mamen

앱의 루트 디렉터리에있는 @Mamen, 다음 tp package.json. package.json은 앱이 컴파일 / 실행하기 위해 필요한 종속성 (패키지)을 나열합니다. 당신이 실행하는 경우 yarn install또는 yarn프로젝트 / 응용 프로그램을 실행할 수 있도록 해당 파일에 나열된 패키지 다운로드 및 설치됩니다. "잠금"파일은 패키지 버전과 무결성을 보장하는 npm과 yarn의 한 가지 차이점입니다.
셰릴 호 만

1
나를 위해 그것을 해결하는 데 가까운 유일한 해결책. 삭제 package-lock.json하면 문제가 해결됩니다. 적어도 내 경우에는. 그것은 분명히 바람직하지 않지만. 그리고 공정하게 말하면 OP가 파일을 삭제하려고 시도 했으므로이 답변 주소가 다소 다를 수 있습니다.
x-yuri

4

다음을 시도하십시오.

npm cache clean --force

이것은 나를 위해 일했습니다.


3
이것은 이미 여기에있는 답변에 어떤 가치도 추가하지 않습니다. 가장 많이 찬성 된 댓글은 이미를 언급하므로이 npm cache clean --force답변은 소음으로 읽 힙니다.
Goodbye StackExchange 2018-08-05

2
이 코드가 질문에 답할 수 있지만 문제를 해결하는 방법 및 / 또는 이유에 대한 추가 컨텍스트를 제공하면 답변의 장기적인 가치가 향상됩니다.
Donald Duck

4

해결 방법으로 다음 단계를 따르십시오.

  1. 프로젝트 디렉토리로 이동
  2. node_modules 디렉토리를 제거하십시오. rm -rf node_modules
  3. package-lock.json 파일을 제거하십시오. rm package-lock.json
  4. 캐시 지우기 : npm cache clean --force
  5. 실행 npm install --verbose 하면 위의 단계를 수행 한 후에도 여전히 문제는 --verbose 우리에게 설치 명령의 출력을 제공하시기 바랍니다 존재.

나는 npm을 처음 사용합니다. Verbose가 힌트를주었습니다.
Andi AR

3

여기에는 몇 가지 유효하고 유용한 답변이 있지만 제 경우에는 가장 간단한 해결책이 다음과 같음을 추가하고 싶습니다.

  1. package-lock.json을 삭제하십시오.
  2. AppData \ Local \ npm \ cache 또는 AppData \ Roaming \ npm \ cache 폴더를 제거하십시오.
  3. node_modules.staging 폴더를 제거하십시오.
  4. npm install을 다시 실행하십시오.

그 후 모든 것이 순조롭게 진행되었습니다.


2

개인 npm 레지스트리를 사용하고 개인 npm 모듈을 설치하려고했습니다. npm 로컬 레지스트리에 로그인하면 문제가 해결되었습니다 (명령 사용 npm --add-user).


2

나는 이것에 오랫동안 붙어 있었고 이것이 나를 도왔습니다.

이 시도:

npm cache clean --force
npm install --update-binary --no-shrinkwrap

GitHub 문제를 파헤친 후이 답변을 찾았습니다 !!


1

SherylHohman의 답변 은 내가 가진 문제를 해결했지만 인터넷 연결을 전환 한 후에야 해결되었습니다. 처음에는 직장에서 하드 라인 연결을 사용했고 직장에서 WiFi 연결로 전환했지만 여전히 작동하지 않았습니다.

최후의 수단으로 Wi-Fi를 포켓 Wi-Fi로 전환했으며 다음을 실행했습니다.

npm cache verify

npm install -g create-react-app

create-react-app app-name

이것이 다른 사람들에게 도움이되기를 바랍니다.


1

나는 매우 유사한 문제가 있었고 내 경우에는 다음과 같이 작동했습니다.

npm clean

이것은이다 expained로는 캐시에서 모든 패키지를 삭제하기 때문에 옵션 여기 .


1

이것은 아직 언급되지 않았지만 시스템 시간이 올바른지 확인하십시오. 너무 동기화되지 않으면 EINTEGRITY 오류가 발생합니다. npm 게시 / 설치를 할 때.


0

.npmrc범위가 지정된 패키지와 범위가 지정되지 않은 패키지 의 파일 항목을 업데이트하는 것이 저에게 효과적이었습니다. 그래서 나는

npm config set @scope_name:registry SCOPED_REGISTRY_URL

npm config set registry PUBLIC_REGISTRY_URL


0

프로젝트에서 아래 명령을 실행하십시오.

npm rm -rf node_modules && npm rm package-lock.json && npm rm -rf ~/.npm && npm install --update-binary --no-shrinkwrap

0

조직의 프록시 뒤에 있으며 다음 명령을 실행하여 문제가 해결되었습니다.

npm config set proxy http://proxy.yourproxydomain.com:port
npm config set https-proxy http://proxy.yourproxydomain.com:port
npm config set strict-ssl false
npm config set registry https://registry.npmjs.org/

0

제가 일하는 회사에서이 문제가 여러 번있었습니다. node_modules.nvm 폴더에서 폴더를 삭제하면 문제가 해결되었습니다.

rm -rf ~/.nvm/versions/node/v8.6.0/lib/node_modules

0

업데이트 .npmrc및 레지스트리가 https://나를 위해 일했습니다.

registry=https://registry.npmjs.org/

0

터미널에“ipconfig”또는“ifconfig”를 입력 할 때 연결 별 DNS Suffix를 확인해야합니다.


0

나는 같은 문제에 직면했다. 또한 다른 개발자의 솔루션을 선택하여 해결하려고 노력하는 동안 여기에 나열된 것과 같은 몇 가지 문제에 더 직면했습니다.

Angular 9 ng new myapp에서 오류가 발생 함 The Schematic workflow failed

https://medium.com/@codewin/npm-warn-deprecated-request-2-88-2-b6da20766fd7

마지막으로 캐시 정리를 시도하고 다른 버전과 npm 업데이트, nvm 및 프록시 설정 및 더 나은 인터넷 연결과 같은 다른 많은 솔루션의 노드를 확인하고 다시 설치 한 후에도 여전히 해결 방법에 도달하지 못했습니다.

나를 위해 일한 것은 : C : \ Users --- 폴더 내부를 조금 탐색하고 package-lock.json 및 .npmrc 파일을 찾았습니다. 나는 그것들을 삭제하고 각도를 다시 설치하고 시도했습니다. npm 설치 및 다른 모듈 제거가 작동하기 시작했습니다.

<code> ng 새 샘플 앱 </ code>을 사용하여 만드는 동안 문제가 발생했습니다.


0

이 명령을 실행하기 전에

npm install typescript -g

명령을 변경 한 후 완벽하게 작동했습니다.

npm install -g typescript

0

나는이 문제에 직면했다. 내 네트워크 연결이었습니다. 네트워크 (광대역 WiFi에서 4G WiFi로)를 변경하고 시도했습니다. 효과가있었습니다.

내 광대역 ISP가 모든 http 요청을 차단했습니다. 그것이 제 경우에 제가 추측하는 이유 일 수 있습니다.


0

라우터 설정을 확인할 때까지 모든 솔루션이 실패했습니다. 그것은 IPV4로만 설정되었습니다. 나는 변경하고 ipv4v6을 넣었고 모든 것이 이제 잘 작동합니다.


0

위의 답변 중 어느 것도 나를 위해 일하지 않았습니다. 내 문제에 대한 해결책은 package.json 내에서 스냅 샷 종속성이 사용되는 방식을 변경하는 것이 었습니다. 다음 템플릿을 사용하여 필요한 스냅 샷 종속성을 가져옵니다.

"dependency": "git+http://github.com/[pathtoproject].git#[branchname]",

-1

이 시도

  Step-1) Delete package-lock.json from root folder.
  Step-2) Delete node_modules folder
  Step-3) run npm install command in root
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.