npm在eslint报告的末尾抛出一个错误

时间:2018-03-26 16:58:21

标签: typescript eslint

在我的打字稿项目上运行eslint时遇到问题。我有以下package.json,我写了一个脚本来运行eslint:

{
  "name": "ts-tutorial",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "transpile": "tsc",
    "lint": "eslint src --ext ts"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "eslint": "^4.19.1",
    "eslint-config-standard": "^11.0.0",
    "eslint-plugin-import": "^2.9.0",
    "eslint-plugin-node": "^6.0.1",
    "eslint-plugin-promise": "^3.7.0",
    "eslint-plugin-standard": "^3.0.1",
    "typescript": "^2.7.2",
    "typescript-eslint-parser": "^14.0.0"
  }
}

所以现在,当我运行npm run ling时,我得到了正确的输出,包含了我的代码所有的错误,需要进行修改。但是在列表的末尾,我看到了一个npm错误:

✖ 7 problems (7 errors, 0 warnings)
  6 errors, 0 warnings potentially fixable with the `--fix` option.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ts-tutorial@1.0.0 lint: `eslint src --ext ts`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ts-tutorial@1.0.0 lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/dbugger/.npm/_logs/2018-03-26T16_44_57_459Z-debug.log

导致此错误的原因是什么?我已经阅读了日志文件,但是我无法理解阅读它的问题。

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'lint' ]
2 info using npm@5.5.1
3 info using node@v8.9.3
4 verbose run-script [ 'prelint', 'lint', 'postlint' ]
5 info lifecycle ts-tutorial@1.0.0~prelint: ts-tutorial@1.0.0
6 info lifecycle ts-tutorial@1.0.0~lint: ts-tutorial@1.0.0
7 verbose lifecycle ts-tutorial@1.0.0~lint: unsafe-perm in lifecycle true
8 verbose lifecycle ts-tutorial@1.0.0~lint: PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/home/dbugger/projects/exercises/ts-tutorial/node_modules/.bin:/home/dbugger/.rbenv/plugins/ruby-build/bin:/home/dbugger/.rbenv/shims:/home/dbugger/.rbenv/bin:/home/dbugger/npm-global/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
9 verbose lifecycle ts-tutorial@1.0.0~lint: CWD: /home/dbugger/projects/exercises/ts-tutorial
10 silly lifecycle ts-tutorial@1.0.0~lint: Args: [ '-c', 'eslint src --ext ts' ]
11 silly lifecycle ts-tutorial@1.0.0~lint: Returned: code: 1  signal: null
12 info lifecycle ts-tutorial@1.0.0~lint: Failed to exec lint script
13 verbose stack Error: ts-tutorial@1.0.0 lint: `eslint src --ext ts`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:280:16)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at EventEmitter.emit (events.js:214:7)
13 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at ChildProcess.emit (events.js:214:7)
13 verbose stack     at maybeClose (internal/child_process.js:925:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid ts-tutorial@1.0.0
15 verbose cwd /home/dbugger/projects/exercises/ts-tutorial
16 verbose Linux 4.13.0-37-generic
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "run" "lint"
18 verbose node v8.9.3
19 verbose npm  v5.5.1
20 error code ELIFECYCLE
21 error errno 1
22 error ts-tutorial@1.0.0 lint: `eslint src --ext ts`
22 error Exit status 1
23 error Failed at the ts-tutorial@1.0.0 lint script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

1 个答案:

答案 0 :(得分:2)

这是预期的。根据设计,如果存在任何掉毛错误,eslint将退出状态1。 npm将此解释为错误,并告诉您。

如果您想要取消错误的退出代码,可以使用以下建议的解决方法之一:https://github.com/eslint/eslint/issues/7933