You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行npm install时出现Invalid Version错误,请求协助排查

解决npm install时的"Invalid Version"错误

问题场景

执行npm install时触发TypeError: Invalid Version错误,已尝试清理npm缓存、重启系统,问题仍存在。

错误日志

TypeError: Invalid Version:
    npm verb stack     at new SemVer (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\semver\classes\semver.js:38:13)
    npm verb stack     at compare (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\semver\functions\compare.js:3:32)
    npm verb stack     at Object.gte (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\semver\functions\gte.js:2:30)
    npm verb stack     at Node.canDedupe (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\node.js:1071:32)
    npm verb stack     at PlaceDep.pruneDedupable (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:468:14)
    npm verb stack     at PlaceDep.placeInTree (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:329:14)
    npm verb stack     at PlaceDep.place (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:216:10)
    npm verb stack     at new PlaceDep (C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:73:10)
    npm verb stack     at C:\Users\PAGOTTX\AppData\Local\Volta\tools\image\node\16.16.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:990:31)
    npm verb stack     at Array.map (<anonymous>)
    npm verb cwd C:\Users\PAGOTTX\Projects\hf-ui
    npm verb Windows_NT 10.0.19042
    npm verb node v16.16.0
    npm verb npm  v8.11.0
    npm ERR! Invalid Version:
    npm verb exit 1
    npm timing npm Completed in 10424ms
    npm verb unfinished npm timer reify 1658855279338
    npm verb unfinished npm timer reify:loadTrees 1658855279400
    npm verb unfinished npm timer idealTree:buildDeps 1658855284781
    npm verb unfinished npm timer idealTree:node_modules/@babel/runtime-corejs3 1658855284786
    npm verb code 1

项目package.json内容

{
  "name": "hf-workspace",
  "version":"1.0.0",
  "license": "MIT",
  "scripts": {
    "start": "nx serve",
    "build:clinicianLocal": "nx build clinician --prod  --base-href /apps/clinician/",
    "build:clinician": "npm install nx --force && nx build clinician  --base-href /apps/clinician/",
    "build:pcs-admin-docker": "nx build  --base-href /",
    "test": "nx test clinician --coverage",
    "test:clinician": "nx test clinician --coverage",
    "test:formsLib": "nx test hf-forms --coverage",
    "clearJest": "jest --clearCache",
    "postinstall": "ngcc --properties es2015 browser module main",
    "prepare": "cmd"
  },
  "private": true,
  "devDependencies": {
    "@angular-devkit/build-angular": "^14.0.1",
    "@angular-eslint/eslint-plugin": "~13.1.0",
    "@angular-eslint/eslint-plugin-template": "13.3.0",
    "@angular-eslint/template-parser": "~13.1.0",
    "@angular/cli": "14.0.1",
    "@angular/compiler-cli": "14.0.1",
    "@angular/language-service": "14.0.1",
    "@babel/eslint-parser": "^7.18.2",
    "@ngrx/schematics": "~13.0.0",
    "@ngrx/store-devtools": "~13.0.0",
    "@nrwl/angular": "14.4.3",
    "@nrwl/cli": "14.4.3",
    "@nrwl/cypress": "14.4.3",
    "@nrwl/eslint-plugin-nx": "14.4.3",
    "@nrwl/jest": "14.4.3",
    "@nrwl/linter": "14.4.3",
    "@nrwl/storybook": "14.4.3",
    "@nrwl/workspace": "14.4.3",
    "@storybook/addon-essentials": "~6.4.12",
    "@storybook/angular": "~6.4.12",
    "@storybook/builder-webpack5": "~6.4.12",
    "@storybook/core-server": "~6.4.12",
    "@storybook/manager-webpack5": "~6.4.12",
    "@testing-library/angular": "12.0.1",
    "@testing-library/dom": "^8.14.0",
    "@testing-library/jest-dom": "^5.16.4",
    "@testing-library/user-event": "^14.2.1",
    "@types/jest": "27.4.1",
    "@types/node": "16.11.7",
    "@types/testing-library__jest-dom": "^5.14.5",
    "@types/uuid": "^8.3.4",
    "@typescript-eslint/eslint-plugin": "5.29.0",
    "@typescript-eslint/parser": "5.29.0",
    "cypress": "^9.1.0",
    "eslint": "8.15.0",
    "eslint-config-prettier": "8.1.0",
    "eslint-plugin-jest": "^26.5.3",
    "husky": "^8.0.1",
    "jasmine-marbles": "~0.9.1",
    "jest": "27.5.1",
    "jest-preset-angular": "11.1.1",
    "nx": "14.4.3",
    "prettier": "2.6.2",
    "ts-jest": "27.1.4",
    "ts-node": "10.8.2",
    "typescript": "4.7.4",
    "webpack": "^5.64.0"
  },
  "dependencies": {
    "@amcharts/amcharts5": "^5.2.8",
    "@angular-devkit/architect": "^0.1401.0",
    "@angular-devkit/core": "^14.1.0",
    "@angular/animations": "14.0.1",
    "@angular/cdk": "14.0.1",
    "@angular/common": "14.0.1",
    "@angular/compiler": "14.0.1",
    "@angular/core": "14.0.1",
    "@angular/flex-layout": "^14.0.0-beta.40",
    "@angular/forms": "14.0.1",
    "@angular/material": "14.0.1",
    "@angular/platform-browser": "14.0.1",
    "@angular/platform-browser-dynamic": "14.0.1",
    "@angular/router": "14.0.1",
    "@azure/msal-angular": "^2.3.3",
    "@azure/msal-browser": "^2.27.0",
    "@ngrx/component-store": "^14.0.1",
    "@ngrx/effects": "~13.0.0",
    "@ngrx/entity": "~13.0.0",
    "@ngrx/router-store": "~13.0.0",
    "@ngrx/store": "^14.0.1",
    "@ngx-translate/core": "^14.0.0",
    "@ngx-translate/http-loader": "^7.0.0",
    "jest-junit": "^14.0.0",
    "rxjs": "~7.4.0",
    "tslib": "^2.0.0",
    "zone.js": "~0.11.4"
  },
  "volta": {
    "node": "16.16.0"
  },
  "jest-junit": {
    "outputDirectory": "./coverage/xml/",
    "outputName": "junit.xml",
    "uniqueOutputName": "false"
  }
}

问题分析与解决方案

从错误栈看,问题出在semver包处理版本号时遇到了空值或无效格式,且错误关联到@babel/runtime-corejs3。结合package.json内容,可按以下步骤排查解决:

  • 统一依赖版本:项目中@ngrx系列包混用13.x和14.x版本,可能导致依赖解析异常。建议将所有@ngrx包版本统一为14.x,修改package.json中的对应依赖:

    "@ngrx/schematics": "~14.0.1",
    "@ngrx/store-devtools": "~14.0.1",
    "@ngrx/effects": "~14.0.1",
    "@ngrx/entity": "~14.0.1",
    "@ngrx/router-store": "~14.0.1"
    
  • 清理残留文件:删除项目根目录下的node_modules文件夹、package-lock.json文件,再次执行npm cache clean --force清理缓存。

  • 重新安装依赖:运行npm install重新安装所有依赖。

  • 排查环境问题:临时移除package.json中的volta配置块,使用系统全局的node/npm执行安装,验证是否是volta环境导致的问题。

  • 调整postinstall脚本:注释掉postinstall脚本,待依赖安装完成后,手动执行ngcc --properties es2015 browser module main。

内容的提问来源于stack exchange,提问作者3gwebtrain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 03:15:57