Khi tôi chạy `npm install`, nó sẽ trả về với` ERR! mã EINTEGRITY` (npm 5.3.0)


134

Tôi gặp lỗi này khi đang chạy sudo npm install. Trên máy chủ của tôi, npm đã được cài đặt trước đó. Tôi đã cố gắng xóa package-lock.jsontệp và chạy npm cache clean --force, nhưng nó không hoạt động.

Phiên bản npm của tôi là 5.3.0.

Lỗi:

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

Xem Giải pháp dưới đây để tránh các nguyên nhân của vấn đề, đặc biệt là khi kết nối một vấn đề.
SherylHohman

Trong trường hợp của tôi, nó hoạt động bằng cách đơn giản là chạy lại lệnh!
kds23

1
Chạy theo 2 lệnh đã giải quyết được vấn đề của tôi. $ rm -rf package-lock.json node_modules $ npm cài đặt
Rao

Câu trả lời:


200

Xem https://github.com/npm/npm/issues/16861

Điều này đã làm việc cho tôi:
npm cache verify

Sau đó, tôi chạy lại:
npm install -g create-react-app

Và nó được cài đặt như mong đợi: Vấn đề đã được giải quyết


Các giải pháp khác được đề cập trong vấn đề github bao gồm:

npm cache clean --force

HOẶC LÀ

Xóa các thư mục npm và npm-cache trong Users%username%\AppData\Roaming(windows 7) và đang chạynpm install

HOẶC LÀ

Cập nhật npm bằng qua npm i -g npm

HOẶC LÀ

Xóa bỏ package-lock.json

HOẶC LÀ

npm cache verify

HOẶC LÀ

npm cache clean

HOẶC LÀ

Thực hiện các bước sau để khắc phục sự cố:

  1. Tìm tất cả các gói lỗi thời và cập nhật chủ đề:
    npm outdated -g
    sudo npm i -g outDatedPKG
  2. Nâng cấp npm lên phiên bản mới nhất với:
    sudo npm i -g npm
  3. Xóa package-lock.jsontệp.
  4. Xóa _cacachethư mục trong ~/.npm: npm cache verify
  5. Mỗi khi tôi gặp lỗi đó, hãy thực hiện bước 2 & 3.
  6. Nếu bạn vẫn gặp lỗi, hãy xóa bộ nhớ cache của npm:
    npm cache clean --force

HOẶC LÀ

  1. Thêm proxy vào .npmrctrong ~thư mục:

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

  1. Thử lại! kết nối internet chậm và kiểm duyệt có thể gây ra vấn đề xấu xí này.

HOẶC LÀ

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

HOẶC LÀ

npm config set package-lock false


1
Cảm ơn bạn! Điều đó rất hữu ích và tôi đã giải quyết được vấn đề của mình khi chọn một số tùy chọn đã cho.
jfajunior

Siêu !! Rất vui được trợ giúp :-)
SherylHohman

3
Sheryl, đầu tiên: cảm ơn vì đã dành thời gian trả lời câu hỏi này. Rõ ràng là câu trả lời của bạn hữu ích cho mọi người. Tôi có thể hỏi bạn những gì mỗi lựa chọn thay thế này có, và tại sao một số có thể hoạt động trong khi những lựa chọn khác thì không? Cảm ơn!
Andres F.

1
@AndresF. Tôi không có hiểu biết sâu sắc về cách hoạt động của phần dưới của sợi, hoặc khi nào / tại sao một số phương pháp hoạt động hơn các phương pháp khác. Trong một số trường hợp, về cơ bản họ hoàn thành cùng một việc, nhưng lại kích hoạt nó theo một cách khác. Tôi đã liên kết đến vấn đề github, nơi tất cả các giải pháp này đã được trình bày - nó là nguồn của danh sách được biên dịch trong câu trả lời của tôi. Tôi khuyên bạn nên nghiên cứu về phần dưới của sợi và npm, hoặc kiểm tra vấn đề github được liên kết, có thể liên hệ với từng tác giả nếu cần.
SherylHohman

Trong trường hợp, bất kỳ bản cập nhật nào trong phiên bản nút js trong máy cục bộ, Nó sẽ thông qua lỗi này.
gnganpath

44

Xóa tệp package-lock.json và sau đó thử cài đặt


Cảm ơn vì nhận xét này, nó đã giúp tôi giải quyết sự cố khi tôi triển khai trang GatsbyJS cho Netlify.
sathishpaul

Đã thử tất cả ở trên và đây là giải pháp!
Adam Boczek

yeah Nó hoạt động sau khi xóa package-lock.jason và chạy lại cài đặt npm
CJM

24

Trên thực tế những điều trên là liên quan đến kết nối mạng bên trong máy chủ. Khi tôi kết nối tốt trong máy chủ, quá trình cài đặt npm diễn ra tốt và không gặp bất kỳ lỗi nào


1
Mỏ làm việc sau khi chuyển đổi sang một kết nối VPN, do đó, nó chắc chắn là một vấn đề kết nối
bmukorera

13

Vấn đề của tôi là 2 điều:

  1. Tệp package-lock.json bị lỗi
  2. Sự tồn tại của npm-cowrap.json cùng với tệp package-lock.json

Những gì tôi đã làm là:

  1. Đã xóa tệp package-lock.json
  2. Xóa tệp npm-cowrap.json
  3. Chạy lại cài đặt npm (đã tạo lại một tệp khóa gói tốt)

Đã sửa lỗi của tôi!


Tôi đã gặp sự cố này khi xây dựng trên AWS Codebuild. Điều này đã làm việc cho tôi. Cảm ơn.
bertie

11

Vấn đề thực sự là do package-lock.jsonvà sau khi thay thế nó bằng một phiên bản hoạt động từ một nhánh khác, nó đã hoạt động.

Điều thú vị là nhìn thấy sự khác biệt:

khác biệt

Vì vậy, thực sự có một số tổng kiểm tra tính toàn vẹn trong package-lock.jsonđể xác minh rằng tệp bạn đang tải xuống không bị giả mạo. Chỉ là bằng cách nào đó, tổng kiểm tra toàn vẹn đã được thay thế package-lock.jsonbằng SHA1 thay vì SHA-512 tổng kiểm tra. Tôi không có ý kiến ​​nào về chuyện này xảy ra.

Trong trường hợp bạn không có phiên bản làm việc ở chi nhánh khác . Xem xét thông điệp

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)

Tìm gói bằng hai tổng kiểm tra đầu tiên trong package-lock.json:

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

và đặt tổng kiểm tra thứ ba vào trường "tính toàn vẹn" của nó:

sha512-WXI95kpJrxw4Nnx8vVI90PuUhrQjnNgghBl5tn54rUNKZYbxv+4ACxUzPVpJEtWxKmeDwnQrzjc0C2bYmRJVKg==

Mô tả chi tiết hơn ở đây .


tệp package-lock.json ở đâu?
Mamen

@Mamen trong thư mục gốc của ứng dụng của bạn, tiếp theo tp package.json. package.json liệt kê các phụ thuộc (gói) ứng dụng của bạn cần để biên dịch / chạy. Khi bạn chạy yarn installhoặc yarn, các gói được liệt kê trong tệp đó sẽ được tải xuống và cài đặt, để dự án / ứng dụng có thể chạy được. Tệp "khóa" là một điểm khác biệt giữa npm và sợi, đảm bảo các phiên bản gói và tính toàn vẹn.
SherylHohman,

1
Giải pháp duy nhất đã gần giải quyết được nó cho tôi. Xóa package-lock.jsoncũng nên khắc phục nó. Ít nhất là trong trường hợp của tôi. Mặc dù điều đó rõ ràng là không mong muốn. Và công bằng mà nói, tôi phải đề cập ở đây rằng OP đã cố gắng xóa tệp, vì vậy trường hợp mà câu trả lời này giải quyết có lẽ hơi khác.
x-yuri

4

Hãy thử những cách sau:

npm cache clean --force

Điều này đã làm việc cho tôi.


3
Điều này không thêm bất kỳ giá trị nào cho các câu trả lời đã có ở đây. Nhận xét được bình chọn cao nhất đã được đề cập npm cache clean --force, vì vậy câu trả lời này chỉ đọc như là tiếng ồn.
Tạm biệt StackExchange

2
Mặc dù mã này có thể trả lời câu hỏi, nhưng việc cung cấp thêm ngữ cảnh về cách thức và / hoặc lý do tại sao nó giải quyết vấn đề sẽ cải thiện giá trị lâu dài của câu trả lời.
Donald Duck

4

Để giải quyết vấn đề, hãy làm theo các bước sau:

  1. Đi tới thư mục dự án
  2. Xóa thư mục node_modules: rm -rf node_modules
  3. Xóa tệp package-lock.json: rm package-lock.json
  4. Xóa bộ nhớ cache: npm cache clean --force
  5. Chạy npm install --verbose Nếu sau khi làm theo các bước trên mà sự cố vẫn tồn tại thì vui lòng cung cấp cho chúng tôi kết quả đầu ra của lệnh cài đặt với --verbose.

Tôi mới đến npm. Verbose đã cho tôi một số gợi ý.
Andi AR

3

Có một số câu trả lời hợp lệ và hữu ích ở đây, nhưng tôi muốn thêm rằng trong trường hợp của tôi, giải pháp đơn giản nhất là:

  1. Xóa package-lock.json;
  2. Xóa thư mục AppData \ Local \ npm \ cache hoặc AppData \ Roaming \ npm \ cache;
  3. Loại bỏ thư mục node_modules.staging;
  4. Chạy lại cài đặt npm.

Sau đó mọi thứ diễn ra suôn sẻ.


2

Tôi đang sử dụng sổ đăng ký npm riêng tư và cố gắng cài đặt mô-đun npm riêng tư. Đăng nhập vào sổ đăng ký cục bộ npm đã sửa nó (lệnh được sử dụng npm --add-user)


2

Tôi đã bị mắc kẹt ở việc này trong một thời gian dài và đây là điều đã giúp tôi.

Thử cái này:

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

Tìm thấy câu trả lời này sau khi tìm hiểu các vấn đề về GitHub !!


1

Câu trả lời của SherylHohman đã giải quyết được vấn đề mà tôi gặp phải, nhưng chỉ sau khi tôi chuyển kết nối Internet. Về mặt chủ ý, tôi đang sử dụng kết nối cứng tại nơi làm việc và tôi đã chuyển sang kết nối WiFi tại nơi làm việc, nhưng điều đó vẫn không hoạt động.

Phương án cuối cùng, tôi chuyển WiFi của mình sang WiFi bỏ túi và chạy những thứ sau hoạt động tốt:

npm cache verify

npm install -g create-react-app

create-react-app app-name

Hy vọng điều này sẽ giúp những người khác.


1

Tôi đã gặp vấn đề tương tự và trong trường hợp của tôi, nó hoạt động bằng cách:

npm clean

Đây là tùy chọn hạt nhân vì nó xóa mọi gói khỏi bộ nhớ cache như được giải thích ở đây .


1

Điều này vẫn chưa được đề cập nhưng hãy đảm bảo rằng THỜI GIAN HỆ THỐNG của bạn là chính xác. Nếu nó quá không đồng bộ, nó sẽ gây ra lỗi EINTEGRITY. Khi bạn đang thực hiện xuất bản / cài đặt npm.


0

Việc cập nhật các .npmrcmục nhập của tệp cho các gói có phạm vi và không có phạm vi đã phù hợp với tôi. Vì vậy, tôi đã kết thúc bằng cách sử dụng

npm config set @scope_name:registry SCOPED_REGISTRY_URL

npm config set registry PUBLIC_REGISTRY_URL


0

Chạy các lệnh bên dưới trong dự án của bạn ..

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

0

Tôi đứng sau proxy của tổ chức của mình, việc chạy các lệnh sau đã khắc phục sự cố cho tôi

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

Chúng tôi đã gặp vấn đề này nhiều lần trong công ty tôi đang làm việc. Xóa node_modulesthư mục khỏi thư mục .nvm đã khắc phục được sự cố:

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

0

Cập nhật .npmrcvà đăng ký https://làm việc cho tôi

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

0

Bạn nên kiểm tra Hậu tố DNS dành riêng cho kết nối khi nhập “ipconfig” hoặc “ifconfig” trong thiết bị đầu cuối


0

Tôi phải đối mặt với cùng một vấn đề. Thêm vào đó, trong khi tôi đang cố gắng giải quyết từ việc chọn giải pháp từ các nhà phát triển khác, tôi gặp phải một số vấn đề khác như một vấn đề được liệt kê ở đây.

Angular 9 ng myapp mới báo lỗi Luồng công việc sơ đồ không thành công

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

Cuối cùng sau khi thử dọn dẹp bộ nhớ cache và xác minh và cài đặt lại nút của các phiên bản khác nhau và cập nhật npm, nvm và nhiều giải pháp khác như đặt proxy và kết nối internet tốt hơn, tôi vẫn không thể giải quyết.

Điều phù hợp với tôi là: Tôi đã duyệt một chút bên trong thư mục C: \ Users --- của mình, tôi tìm thấy các tệp package-lock.json và .npmrc. Tôi đã xóa những cái đó và cài đặt lại góc cạnh và thử. npm cài đặt và gỡ cài đặt các mô-đun khác nhau bắt đầu hoạt động.

sự cố khi tạo bằng <code> ng ứng dụng mẫu mới </code>


0

Trước khi tôi chạy lệnh này

npm install typescript -g

sau khi thay đổi lệnh nó hoạt động hoàn hảo.

npm install -g typescript

0

Tôi đã đối mặt với vấn đề này. Đó là kết nối mạng của tôi. Tôi đã thay đổi mạng (từ WiFi băng thông rộng sang WiFi 4G) và đã thử. Nó đã làm việc.

ISP băng thông rộng của tôi đã chặn tất cả các yêu cầu http. Đó có thể là lý do tôi đoán trong trường hợp của mình.


0

tất cả các giải pháp không thành công cho tôi cho đến khi tôi kiểm tra cài đặt bộ định tuyến; nó được đặt thành chỉ IPV4 .. tôi đã thay đổi và đặt ipv4v6 và hiện tại tất cả đều hoạt động tốt.


0

Không có câu trả lời nào ở trên phù hợp với tôi. Giải pháp cho vấn đề của tôi là thay đổi cách sử dụng phụ thuộc vào snapshot bên trong package.json. Sử dụng mẫu sau để lấy phụ thuộc vào ảnh chụp nhanh mà bạn cần

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

-1

Thử cái này

  Step-1) Delete package-lock.json from root folder.
  Step-2) Delete node_modules folder
  Step-3) run npm install command in root
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.