NPM CI 错误绑定无法从 watchpack-chokidar2:fsevents 访问
NPM CI error bindings not accessible from watchpack-chokidar2:fsevents
当我在 运行 npm ci
上执行 Github 操作时,我得到了错误:
Run npm ci
npm ERR! bindings not accessible from watchpack-chokidar2:fsevents
npm ERR! A complete log of this run can be found in:
npm ERR! /home/runner/.npm/_logs/2021-09-17T15_18_42_465Z-debug.log
Error: Process completed with exit code 1.
可以是什么?
我的.github/workflows/eslint.yaml
name: ESLint
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: '14.x'
- run: npm ci
- run: npm run lint
我的package.json
{
"name": "@blinktrade/uikit",
"version": "1.0.0",
"main": "dist/index.js",
"license": "MIT",
"devDependencies": {
"@babel/plugin-transform-react-jsx": "^7.14.9",
"@babel/preset-env": "^7.15.6",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "^7.15.0",
"@storybook/addon-essentials": "^6.3.8",
"@storybook/react": "^6.3.8",
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^12.1.0",
"@testing-library/user-event": "^13.2.1",
"@types/jest": "^27.0.1",
"@types/react": "^17.0.21",
"@typescript-eslint/eslint-plugin": "^4.31.1",
"@typescript-eslint/parser": "^4.31.1",
"eslint": "^7.32.0",
"eslint-plugin-react": "^7.25.2",
"husky": "^7.0.2",
"jest": "^27.2.0",
"prettier": "^2.4.1",
"pretty-quick": "^3.1.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"rimraf": "^3.0.2",
"typescript": "^4.4.3"
},
"husky": {
"hooks": {
"pre-push": "npm run lint",
"pre-commit": "pretty-quick --staged"
}
},
"scripts": {
"build": "tsc -p .",
"clear": "rimraf dist/",
"format": "prettier '**/*' --write --ignore-unknown",
"lint": "eslint --max-warnings=0 .",
"storybook": "start-storybook -p 4000",
"test": "jest"
}
}
再次使用 NodeJS 14(原为 10)解决了删除包的问题-lock.json 和 运行
帮我更新节点版本
actions/setup-node@v1
必须在 GitHub 操作和构建 package-lock.json
的本地环境中具有相同的版本。在我的例子中,GitHub 操作指向 node 14
.
- uses: actions/setup-node@v1
with:
node-version: "14"
将其更改为 16
后 - 与我在本地环境中使用的相同 - 它解决了问题。
在我的例子中,我的测试突然开始失败,尽管已经工作了一段时间,尽管 node_version
与我的本地 Node 版本匹配,很奇怪。只需在我的 GitHub 操作工作流程中将其更新为 16 即可解决问题并导致测试再次开始 运行:
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
在构建图像设置中我添加了“Node.js 版本 16.15”包。它对我有帮助!
当我在 运行 npm ci
上执行 Github 操作时,我得到了错误:
Run npm ci
npm ERR! bindings not accessible from watchpack-chokidar2:fsevents
npm ERR! A complete log of this run can be found in:
npm ERR! /home/runner/.npm/_logs/2021-09-17T15_18_42_465Z-debug.log
Error: Process completed with exit code 1.
可以是什么?
我的.github/workflows/eslint.yaml
name: ESLint
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: '14.x'
- run: npm ci
- run: npm run lint
我的package.json
{
"name": "@blinktrade/uikit",
"version": "1.0.0",
"main": "dist/index.js",
"license": "MIT",
"devDependencies": {
"@babel/plugin-transform-react-jsx": "^7.14.9",
"@babel/preset-env": "^7.15.6",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "^7.15.0",
"@storybook/addon-essentials": "^6.3.8",
"@storybook/react": "^6.3.8",
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^12.1.0",
"@testing-library/user-event": "^13.2.1",
"@types/jest": "^27.0.1",
"@types/react": "^17.0.21",
"@typescript-eslint/eslint-plugin": "^4.31.1",
"@typescript-eslint/parser": "^4.31.1",
"eslint": "^7.32.0",
"eslint-plugin-react": "^7.25.2",
"husky": "^7.0.2",
"jest": "^27.2.0",
"prettier": "^2.4.1",
"pretty-quick": "^3.1.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"rimraf": "^3.0.2",
"typescript": "^4.4.3"
},
"husky": {
"hooks": {
"pre-push": "npm run lint",
"pre-commit": "pretty-quick --staged"
}
},
"scripts": {
"build": "tsc -p .",
"clear": "rimraf dist/",
"format": "prettier '**/*' --write --ignore-unknown",
"lint": "eslint --max-warnings=0 .",
"storybook": "start-storybook -p 4000",
"test": "jest"
}
}
再次使用 NodeJS 14(原为 10)解决了删除包的问题-lock.json 和 运行
帮我更新节点版本
actions/setup-node@v1
必须在 GitHub 操作和构建 package-lock.json
的本地环境中具有相同的版本。在我的例子中,GitHub 操作指向 node 14
.
- uses: actions/setup-node@v1
with:
node-version: "14"
将其更改为 16
后 - 与我在本地环境中使用的相同 - 它解决了问题。
在我的例子中,我的测试突然开始失败,尽管已经工作了一段时间,尽管 node_version
与我的本地 Node 版本匹配,很奇怪。只需在我的 GitHub 操作工作流程中将其更新为 16 即可解决问题并导致测试再次开始 运行:
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
在构建图像设置中我添加了“Node.js 版本 16.15”包。它对我有帮助!