Npm 安装期间“无法读取未定义的属性‘匹配’”

新手上路,请多包涵

我在构建 Jenkins 时遇到错误

詹金斯日志

任务 :api:processResources 任务 :api:classes 任务 :web:nodeSetup 任务 :web:npmSetup /var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/bin/npm -> / var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/lib/node_modules/npm/bin/npm-cli.js /var/lib/jenkins/workspace/hds_v2_docker/web/。 gradle/npm/npm-v6.11.2/bin/npx -> /var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/lib/node_modules/npm/bin/npx-cli .js

  • npm@6.11.2 在 6.837 秒内添加了来自 832 个贡献者的 430 个包

任务 :web:npmInstall FAILED npm ERR!无法读取未定义的属性“匹配”

npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!

/var/lib/jenkins/.npm/_logs/2019-10-16T01_11_20_594Z-debug.log

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务’:web:npmInstall’执行失败。

进程 ‘command ‘/var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/bin/npm” 以非零退出值 1 结束

  • 尝试:使用 –stacktrace 选项运行以获取堆栈跟踪。使用 –info 或 –debug 选项运行以获得更多日志输出。运行 –scan 以获得完整的见解。

  • https://help.gradle.org 获得更多帮助

此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 6.0 不兼容。使用“–warning-mode all”显示各个弃用警告。请参阅 https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings

33 秒内构建失败

/var/lib/jenkins/.npm/_logs/2019-10-16T01_11_20_594Z-debug.log

 17 silly saveTree   │ ├─┬ clean-css@4.2.1
17 silly saveTree   │ │ └── source-map@0.6.1
17 silly saveTree   │ ├── commander@2.17.1
17 silly saveTree   │ └── he@1.2.0
17 silly saveTree   └─┬ loader-utils@0.2.17
17 silly saveTree     ├── big.js@3.2.0
17 silly saveTree     ├── emojis-list@2.1.0
17 silly saveTree     └── json5@0.5.1
18 verbose stack TypeError: Cannot read property 'match' of undefined
18 verbose stack     at tarballToVersion (/usr/local/lib/node_modules/npm/lib/install/inflate-shrinkwrap.js:87:20)
18 verbose stack     at inflatableChild (/usr/local/lib/node_modules/npm/lib/install/inflate-shrinkwrap.js:99:22)
18 verbose stack     at BB.each (/usr/local/lib/node_modules/npm/lib/install/inflate-shrinkwrap.js:55:12)
18 verbose stack     at tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23)
18 verbose stack     at Object.gotValue (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/reduce.js:155:18)
18 verbose stack     at Object.gotAccum (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/reduce.js:144:25)
18 verbose stack     at Object.tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23)
18 verbose stack     at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:512:31)
18 verbose stack     at Promise._settlePromise (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:569:18)
18 verbose stack     at Promise._settlePromiseCtx (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:606:10)
18 verbose stack     at _drainQueueStep (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:142:12)
18 verbose stack     at _drainQueue (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:131:9)
18 verbose stack     at Async._drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:147:5)
18 verbose stack     at Immediate.Async.drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:17:14)
18 verbose stack     at runCallback (timers.js:810:20)
18 verbose stack     at tryOnImmediate (timers.js:768:5)
19 verbose cwd /var/lib/jenkins/workspace/hds_v2_docker/web
20 verbose Linux 4.4.0-59-generic
21 verbose argv "/usr/bin/node" "/usr/local/bin/npm" "install"
22 verbose node v8.16.0
23 verbose npm  v6.9.0
24 error Cannot read property 'match' of undefined
25 verbose exit [ 1, true ]

原文由 m2sj 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 664
2 个回答

尝试删除您的 package-lock.json 看看是否有帮助。

 rm -rf package-lock.json

编辑:如果问题仍然存在,请删除 node_modules

 rm -rf node_modules

原文由 Aditya Prakash 发布,翻译遵循 CC BY-SA 4.0 许可协议

您必须 同时 删除 package-lock.json node_modules/

如果你不删除两者,问题将在下一个 npm install

原文由 Holger Ludvigsen 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进