昨天,在克隆了我的工作组存储库之后,我注意到了一些非常奇怪的事情。在使用npm安装安装依赖项后,我无法在项目中启动devserver (或运行任何npm脚本)。真奇怪。于是,我尝试用@vue/cli创建自己的新项目,同样的事情也发生在那里。环境:节点: v14.15.0 NPM: v6.14.8全局安装的Vue Cli: v4.5.8 macOS Catalina: v10.15.7
Package.json in project:
"name": "eezer_app",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"core-js": "^3.6.5",
"vue": "^2.6.11",
"vue-router": "^3.2.0",
"vuetify": "^2.2.11",
"vuex": "^3.4.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-plugin-router": "~4.5.0",
"@vue/cli-plugin-vuex": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"sass": "^1.19.0",
"sass-loader": "^8.0.0",
"vue-cli-plugin-vuetify": "~2.0.7",
"vue-template-compiler": "^2.6.11",
"vuetify-loader": "^1.3.0"
}
}
错误输出:
➜ eezer_app git:(master) ✗ npm run serve
> eezer_app@0.1.0 serve /Users/my-real-name/Documents/frontend-jensen/UX:UI-2/eezer_app
> vue-cli-service serve
sh: vue-cli-service: command not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! eezer_app@0.1.0 serve: `vue-cli-service serve`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the eezer_app@0.1.0 serve 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! /Users/my-real-name/.npm/_logs/2020-11-03T09_50_50_094Z-debug.log
调试日志文件:
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'serve' ]
2 info using npm@6.14.8
3 info using node@v14.15.0
4 verbose run-script [ 'preserve', 'serve', 'postserve' ]
5 info lifecycle eezer_app@0.1.0~preserve: eezer_app@0.1.0
6 info lifecycle eezer_app@0.1.0~serve: eezer_app@0.1.0
7 verbose lifecycle eezer_app@0.1.0~serve: unsafe-perm in lifecycle true
8 verbose lifecycle eezer_app@0.1.0~serve: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/my-real-name/Documents/frontend-jensen/UX:UI-2/eezer_app/node_modules/.bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
9 verbose lifecycle eezer_app@0.1.0~serve: CWD: /Users/my-real-name/Documents/frontend-jensen/UX:UI-2/eezer_app
10 silly lifecycle eezer_app@0.1.0~serve: Args: [ '-c', 'vue-cli-service serve' ]
11 info lifecycle eezer_app@0.1.0~serve: Failed to exec serve script
12 verbose stack Error: eezer_app@0.1.0 serve: `vue-cli-service serve`
12 verbose stack spawn ENOENT
12 verbose stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:48:18)
12 verbose stack at ChildProcess.emit (events.js:315:20)
12 verbose stack at maybeClose (internal/child_process.js:1048:16)
12 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
13 verbose pkgid eezer_app@0.1.0
14 verbose cwd /Users/my-real-name/Documents/frontend-jensen/UX:UI-2/eezer_app
15 verbose Darwin 19.6.0
16 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "serve"
17 verbose node v14.15.0
18 verbose npm v6.14.8
19 error code ELIFECYCLE
20 error syscall spawn
21 error file sh
22 error errno ENOENT
23 error eezer_app@0.1.0 serve: `vue-cli-service serve`
23 error spawn ENOENT
24 error Failed at the eezer_app@0.1.0 serve script.
24 error This is probably not a problem with npm. There is likely additional logging output above.
25 verbose exit [ 1, true ]
同样的错误也出现在用vue create
创建的一个新创建的Vue项目中。
npm似乎试图在全局上寻找依赖包,而不是在node_modules中查找本地包,因为我可以通过在本地node_module .bin中手动选择脚本来运行,如下所示:
./node_modules/.bin/vue-cli-service serve
--然后它完美地启动,没有任何错误的,所以安装的node_modules等等没有问题。我从昨天开始就试着修复它,没有结果。我找到了清除npm缓存、删除本地node_modules &Packagelock.json的提示,但是它根本不起作用。我甚至在我的Mac上重新安装了CLT。
我的npm怎么了?为什么它似乎在我的全局node_module中寻找依赖项?
感谢任何一种技巧,因为我已经用尽了我的大部分选择。
发布于 2021-03-24 14:16:28
我更新了Node,NPM,我所有的全局节点模块,运行了brew update
,重新安装了xcode:sudo rm -rf /Library/Developer/CommandLineTools
,然后是xcode-select --install
,它似乎又开始工作了。
在一个新创建的Vue项目中也会出现同样的错误。
使用@ vue /cli创建了一个新的vue项目,我能够运行npm run serve
。希望这对其他面临这一问题的人有所帮助。
https://stackoverflow.com/questions/64661598
复制相似问题