使用panjiachen的vue-admin-template项目时出现的问题及解决方案

发布时间 2023-11-06 14:11:24作者: Mrzxs

一、问题

项目执行 npm install 时出现以下问题:

npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated eslint-loader@2.0.0: This loader has been deprecated. Please use eslint-webpack-plugin
npm WARN deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated acorn-dynamic-import@3.0.0: This is probably built in to whatever tool you're using. If you still need it... idk
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated html-webpack-plugin@4.0.0-alpha: please switch to a stable version
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated babel-eslint@8.2.6: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated bfj-node4@5.3.1: Switch to the `bfj` package for fixes and new features!
npm WARN deprecated axios@0.18.0: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410
npm WARN deprecated uglify-es@3.3.9: support for ECMAScript is superseded by `uglify-js` as of v3.13.0
npm WARN deprecated svgo@1.0.5: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive security updates. Please upgrade asap.
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
npm ERR! code 1
npm ERR! path /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-sass
npm ERR! command failed
npm ERR! command sh -c node scripts/build.js
npm ERR! Building: /home/uzls01/opt/node-v18.17.0-linux-x64/bin/node /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli   '/home/uzls01/opt/node-v18.17.0-linux-x64/bin/node',
npm ERR! gyp verb cli   '/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-gyp/bin/node-gyp.js',
npm ERR! gyp verb cli   'rebuild',
npm ERR! gyp verb cli   '--verbose',
npm ERR! gyp verb cli   '--libsass_ext=',
npm ERR! gyp verb cli   '--libsass_cflags=',
npm ERR! gyp verb cli   '--libsass_ldflags=',
npm ERR! gyp verb cli   '--libsass_library='
npm ERR! gyp verb cli ]
npm ERR! gyp info using node-gyp@3.8.0
npm ERR! gyp info using node@18.17.0 | linux | x64
npm ERR! gyp verb command rebuild []
npm ERR! gyp verb command clean []
npm ERR! gyp verb clean removing "build" directory
npm ERR! gyp verb command configure []
npm ERR! gyp verb check python checking for Python executable "python2" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python2
npm ERR! gyp verb `which` failed     at getNotFoundError (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed     at F (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed     at E (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp verb `which` failed  python2 Error: not found: python2
npm ERR! gyp verb `which` failed     at getNotFoundError (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed     at F (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed     at E (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21) {
npm ERR! gyp verb `which` failed   code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp verb check python checking for Python executable "python" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python
npm ERR! gyp verb `which` failed     at getNotFoundError (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed     at F (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed     at E (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp verb `which` failed  python Error: not found: python
npm ERR! gyp verb `which` failed     at getNotFoundError (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed     at F (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed     at E (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21) {
npm ERR! gyp verb `which` failed   code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp ERR! configure error 
npm ERR! gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
npm ERR! gyp ERR! stack     at PythonFinder.failNoPython (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-gyp/lib/configure.js:484:19)
npm ERR! gyp ERR! stack     at PythonFinder.<anonymous> (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-gyp/lib/configure.js:406:16)
npm ERR! gyp ERR! stack     at F (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:68:16)
npm ERR! gyp ERR! stack     at E (/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:80:29)
npm ERR! gyp ERR! stack     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/which/which.js:89:16
npm ERR! gyp ERR! stack     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/index.js:42:5
npm ERR! gyp ERR! stack     at /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/isexe/mode.js:8:5
npm ERR! gyp ERR! stack     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp ERR! System Linux 5.19.0-50-generic
npm ERR! gyp ERR! command "/home/uzls01/opt/node-v18.17.0-linux-x64/bin/node" "/home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd /home/uzls01/opt/vscodeProjects/vscode_test/vue-admin-template-master/node_modules/node-sass
npm ERR! gyp ERR! node -v v18.17.0
npm ERR! gyp ERR! node-gyp -v v3.8.0
npm ERR! gyp ERR! not ok 
npm ERR! Build failed with error code: 1

npm ERR! A complete log of this run can be found in: /home/uzls01/.npm/_logs/2023-11-05T14_42_15_303Z-debug-0.log

解决方式一(未验证):

npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install
cnpm run dev

解决方式二:

重新安装nodejs其它版本

https://www.cnblogs.com/zlshtml/p/17619209.html

npm和cnpm的区别:

(1) 两者之间只是 node 中包管理器的不同。

(2) npm是node官方的包管理器。cnpm是个中国版的npm,是淘宝定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm。

(3)如果因为网络原因无法使用npm下载,那cnpm这个就派上用场了。

一定切记切记,npm和cnpm只是下载的地址不同,npm是从国外下载东西,cnpm是从国内下载东西。