Как игнорировать несовместимую ошибку "узла" двигателя при установке зависимостей npm с yarn?
при этом package.json
:
{
"name": "yarn-install-fail",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {},
"author": "",
"license": "ISC",
"dependencies": {
"aws-sdk": "2.x.x",
"s3-streams": "^0.3.0"
}
}
Я могу успешно установить зависимости через npm:
$ npm install
added 27 packages in 1.844s
но пряжа терпит неудачу:
$ yarn install
yarn install v0.24.5
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
error s3-streams@0.3.0: The engine "node" is incompatible with this module. Expected version "^1.2.0".
error Found incompatible module
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
похоже, у пряжи возникли проблемы с установкой библиотеки s3-streams@0.3.0
, но я предположил, что он будет резервным для установки всех зависимостей в любом случае, как npm
будет.
2 ответов
вы действительно можете игнорировать такие ошибки через --ignore-двигатели:
$ yarn install --ignore-engines
yarn install v0.24.5
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 1.41s.
это также задокументировано в справке команды:
$ yarn help | grep -- --ignore
--ignore-scripts don't run lifecycle scripts
--ignore-platform ignore platform checks
--ignore-engines ignore engines check
--ignore-optional ignore optional dependencies
просто убедитесь, что версии node и npm соответствуют версиям, указанным в вашем пакете.в JSON:
проверьте версию узла через IDE или запустите:
$ node -v
> 8.11.2
затем убедитесь, что это то же самое, что и в вашем пакете.в JSON:
{
"name": "yarn-install-fail",
...
"engines": {
"node": "8.11.2"
},
"dependencies": {
...
}
}