旧项目执行npm i遇依赖构建错误,特定Node/NPM版本适配解决
旧Node项目依赖安装问题及解决方案
- 项目为遗留旧项目,当前运行环境为Node 12;尝试切换到Node 18时,执行
npm i会触发依赖构建错误,无法完成依赖安装 - 已尝试过
npm update命令,未解决问题;也删除过node_modules目录重新安装,依旧无效 - 问题已解决:必须匹配特定的Node与NPM版本,哪怕只是小版本的上下偏差都会导致安装失败
- NPM具体版本可参考项目日志
项目package.json内容
{ "private": true, "scripts": { "fontawesome": "npm config set \"@fortawesome:registry\" https://npm.fontawesome.com/ && npm config set \"//npm.fontawesome.com/:_authToken\" token", "dev": "npm run development", "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "npm run watch -- --watch-poll", "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", "prod": "npm run production", "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" }, "devDependencies": { "@babel/preset-env": "^7.0.0", "axios": "^0.17", "babel-core": "^6.26.3", "babel-plugin-transform-object-assign": "^6.22.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.7.0", "babel-preset-es2015": "^6.24.1", "babel-preset-stage-2": "^6.24.1", "bootstrap-sass": "^3.3.7", "cross-env": "^5.2.0", "jquery": "^3.3.1", "laravel-mix": "^2.1.0", "less": "^2.7.3", "less-loader": "^4.1.0", "lodash": "^4.17.10", "sass-resources-loader": "^1.3.3", "uglify-es": "^3.3.10", "uglifyjs-webpack-plugin": "^1.2.6", "vue": "^2.5.16", "vue-particles": "^1.0.9", "webpack-bundle-analyzer": "^3.0.2" }, "dependencies": { "@fortawesome/fontawesome": "^1.1.8", "@fortawesome/fontawesome-free": "^5.10.1", "@fortawesome/fontawesome-free-brands": "^5.0.13", "@fortawesome/fontawesome-free-regular": "^5.0.13", "@fortawesome/fontawesome-pro-light": "^5.0.13", "@fortawesome/fontawesome-pro-regular": "^5.0.13", "@fortawesome/fontawesome-svg-core": "^1.2.21", "@fortawesome/free-solid-svg-icons": "^5.10.1", "@fortawesome/vue-fontawesome": "^0.1.6", "babel-plugin-transform-remove-strict-mode": "0.0.2", "cypress": "^3.1.0", "es6-promise": "^4.2.4", "flickity-fullscreen": "^1.1.0", "fs": "0.0.1-security", "global-res": "file:../../resources/assets", "module": "^1.2.5", "node-sass": "^4.13.0", "spectrumNPM": "git+https://credential@gitlab.tkw-partner.de/spectrum-unlimited/spectrumNPM.git", "vue-agile": "^0.3.7", "vue-axios": "^2.1.1", "vue-flickity": "^1.1.2", "vue-gtm": "^1.0.2", "vue-infinite-loading": "^2.3.1", "vue-loader": "^13.7.2", "vue-router": "^3.0.1", "vue-spinner": "^1.0.3", "vue-template-compiler": "^2.5.16", "vue-toasted": "^1.1.24", "vue-transmit": "^8.1.4", "vuex": "^3.0.1", "vuex-persistedstate": "^2.5.4", "workbox-webpack-plugin": "^3.3.0" } }
内容的提问来源于stack exchange,提问作者Atronix
相关产品推荐
相关产品推荐

