Исправлена ошибка установки npm с кодом ошибки EINTEGRITY
Я просмотрел различные подобные посты здесь безрезультатно. Все они приходят к аналогичным решениям об использовании npm cache verify
или же npm cache clear
, так далее.
Я даже дошел до того, что полностью удалил npm и узел, используя все возможные методы, и начал заново. Я даже прибегал к использованию --force
, Ничего не сработало. Я делюсь последним входом в систему в надежде, что кто-нибудь укажет на мой сайт или, по крайней мере, покажет мне возможное решение
У меня не хватило времени, чтобы исправить это, и я сильно отстала от работы. Так что считай меня своим новым лучшим другом, если ты моя ночь в сияющих доспехах здесь. Я делюсь последним журналом ниже.
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node',
1 verbose cli '/usr/local/bin/npm',
1 verbose cli 'i',
1 verbose cli 'npm',
1 verbose cli '-g',
1 verbose cli '--force' ]
2 info using npm@5.6.0
3 info using node@v8.9.4
4 warn using --force I sure hope you know what you are doing.
5 verbose npm-session 9e6a63471e97c268
6 silly install loadCurrentTree
7 silly install readGlobalPackageData
8 http fetch GET 200 https://registry.npmjs.org/npm 151ms
9 silly pacote tag manifest for npm@latest fetched in 302ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 silly install loadShrinkwrap
13 silly install loadAllDepsIntoIdealTree
14 silly resolveWithNewModule npm@5.7.1 checking installable status
15 silly pacote trying https://registry.npmjs.org/npm/-/npm-5.7.1.tgz by hash: sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA==
16 silly pacote data for sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== not present. Using manifest.
17 verbose stack Error: sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== integrity checksum failed when using sha512: wanted sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== but got sha512-iBtbJV6DQB9dnO+DHun+8z2zKH2zz8pd5nJQL1NNwCxzeYJnSKIa/pmkgRHxYDIhEkRUKbm8wVdQuwxnaL5jhg==. (2162194 bytes)
17 verbose stack at Transform.on (/usr/local/lib/node_modules/npm/node_modules/ssri/index.js:275:19)
17 verbose stack at emitNone (events.js:111:20)
17 verbose stack at Transform.emit (events.js:208:7)
17 verbose stack at endReadableNT (_stream_readable.js:1055:12)
17 verbose stack at _combinedTickCallback (internal/process/next_tick.js:138:11)
17 verbose stack at process._tickCallback (internal/process/next_tick.js:180:9)
18 verbose cwd /Users/jasongribble
19 verbose Darwin 16.7.0
20 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "i" "npm" "-g" "--force"
21 verbose node v8.9.4
22 verbose npm v5.6.0
23 error code EINTEGRITY
24 error sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== integrity checksum failed when using sha512: wanted sha512-r1grvv6mcEt+nlMzMWPc5n/z5q8NNuBWj0TGFp1PBSFCl6ubnAoUGBsucYsnZYT7MOJn0ha1ptEjmdBoAdJ+SA== but got sha512-iBtbJV6DQB9dnO+DHun+8z2zKH2zz8pd5nJQL1NNwCxzeYJnSKIa/pmkgRHxYDIhEkRUKbm8wVdQuwxnaL5jhg==. (2162194 bytes)
25 verbose exit [ 1, true ]
6 ответов
Выполнение этих команд решило мою проблему:
rm -rf package-lock.json node_modules
npm install
Я только что столкнулся с этой проблемой на работе. Причиной было то, что файл package-lock.json в нашей основной ветке устарел и содержал старые значения целостности. Удалив файл package-lock.json, я смог запустить npm install и больше не было ошибок EINTEGRITY.
Я нашел ответ на эту проблему в другом посте SO: Ошибка контрольной суммы целостности при установке инструментария API Connect #apiconnect.
Они придумали ответ через этот комментарий к проблеме GitHub для npm: https://github.com/npm/npm/issues/16861
Я удалил node_modules, package-lock.json в папке решения, затем повторно запустил npm install, у меня это отлично сработало. обратитесь к этому - введите описание изображения здесь
Я вижу много людей, предлагающих удалить файл package-lock.json, но я думаю, что это не очень хорошее решение, особенно если вы работаете над кодом, который был написан давно, у него есть очень специфические версии зависимостей, без которого код может работать неправильно.
Лучшее решение, если это возможно, — заменить старый package-lock.json на один из другой рабочей ветки или предыдущего рабочего коммита, а затем запуститьnpm install
.
Это, казалось, решило проблему для меня.
Проверьте реестр npm, который вы использовали локально и удаленно.
Моя проблема заключалась в том, что я изменил реестр CI и зафиксировал локальный сгенерированный package-lock.json, который имеет другой реестр.
Другой реестр, безусловно, имеет другую подпись пакета, вызвавшего эту проблему.