Node.js VueJS:错误:侦听EADDRNOTAVAIL:地址不可用

Node.js VueJS:错误:侦听EADDRNOTAVAIL:地址不可用,node.js,vue.js,npm,Node.js,Vue.js,Npm,我是JS新手,最近我用vue CLI 2学习了vue.JS,但现在我想安装vue CLI 4.3.0的新版本,我已经在做一步一步的教程来安装它,但是当我运行$npm run serve时,会出现这样的错误。根据类似的StackOverflow问题,我猜这是关于IP地址的,但我真的不知道如何实现它 > vue-cli-new@0.1.0 serve /Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue-cli-new > v

我是JS新手,最近我用vue CLI 2学习了vue.JS,但现在我想安装vue CLI 4.3.0的新版本,我已经在做一步一步的教程来安装它,但是当我运行$
npm run serve
时,会出现这样的错误。根据类似的StackOverflow问题,我猜这是关于IP地址的,但我真的不知道如何实现它

> vue-cli-new@0.1.0 serve /Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue-cli-new
> vue-cli-service serve

 INFO  Starting development server... 11% building 13/15 modules 2 active ...vue-cli-new/node_modules/webpack-dev-server/client/utils/reloadApp.jsevents.js:292
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRNOTAVAIL: address not available 36.86.63.182:8080
    at Server.setupListenHandle [as _listen2] (net.js:1296:21)
    at listenInCluster (net.js:1361:12)
    at GetAddrInfoReqWrap.doListen [as callback] (net.js:1498:7)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:71:10) Emitted 'error' event on Server instance at:
    at emitErrorNT (net.js:1340:8)
    at processTicksAndRejections (internal/process/task_queues.js:84:21) {   code: 'EADDRNOTAVAIL',   errno: -49,   syscall: 'listen',   address: '36.86.63.182',   port: 8080 } npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! vue-cli-new@0.1.0 serve: `vue-cli-service serve` npm ERR! Exit status 1 npm ERR!  npm ERR! Failed at the vue-cli-new@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/arul/.npm/_logs/2020-04-07T10_46_15_552Z-debug.log
这是日志文件

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   '/usr/local/Cellar/node/13.12.0/bin/node',
1 verbose cli   '/usr/local/bin/npm',
1 verbose cli   'run',
1 verbose cli   'serve'
1 verbose cli ]
2 info using npm@6.14.4
3 info using node@v13.12.0
4 verbose run-script [ 'preserve', 'serve', 'postserve' ]
5 info lifecycle vue-cli-new@0.1.0~preserve: vue-cli-new@0.1.0
6 info lifecycle vue-cli-new@0.1.0~serve: vue-cli-new@0.1.0
7 verbose lifecycle vue-cli-new@0.1.0~serve: unsafe-perm in lifecycle true
8 verbose lifecycle vue-cli-new@0.1.0~serve: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue-cli-new/node_modules/.bin:/Users/arul/google-cloud-sdk/bin:/usr/local/bin:/opt/anaconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/home/username/bin:/usr/local/homebrew:/Users/arul/development/flutter/bin
9 verbose lifecycle vue-cli-new@0.1.0~serve: CWD: /Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue-cli-new
10 silly lifecycle vue-cli-new@0.1.0~serve: Args: [ '-c', 'vue-cli-service serve' ]
11 silly lifecycle vue-cli-new@0.1.0~serve: Returned: code: 1  signal: null
12 info lifecycle vue-cli-new@0.1.0~serve: Failed to exec serve script
13 verbose stack Error: vue-cli-new@0.1.0 serve: `vue-cli-service serve`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:315:20)
13 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:315:20)
13 verbose stack     at maybeClose (internal/child_process.js:1026:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
14 verbose pkgid vue-cli-new@0.1.0
15 verbose cwd /Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue-cli-new
16 verbose Darwin 19.2.0
17 verbose argv "/usr/local/Cellar/node/13.12.0/bin/node" "/usr/local/bin/npm" "run" "serve"
18 verbose node v13.12.0
19 verbose npm  v6.14.4
20 error code ELIFECYCLE
0信息如果它以ok结尾,它就工作了
1详细cli[
1 verbose cli'/usr/local/ceral/node/13.12.0/bin/node',
1个详细cli'/usr/local/bin/npm',
1详细cli“运行”,
1个详细cli“serve”
1详细cli]
2信息使用npm@6.14.4
3信息使用node@v13.12.0
4详细的运行脚本['preserve','serve','postserve']
5信息生命周期vue cli-new@0.1.0~preserve:vue cli-new@0.1.0
6信息生命周期vue cli-new@0.1.0~serve:vue cli-new@0.1.0
7详细的生命周期vue cli-new@0.1.0~serve:生命周期中的不安全烫发正确
8详细的生命周期vue cli-new@0.1.0~serve:路径:/usr/local/lib/node_modules/npm/node_modules/npm lifecycle/node gyp bin:/Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue cli new/node_modules/.bin:/Users/arul/google cloud sdk/bin:/usr/local/bin:/usr/local/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/home/Users:/home/username/bin:/usr/local/homebrew:/Users/arul/development/flatter/bin
9详细的生命周期vue cli-new@0.1.0~serve:CWD:/Users/arul/selfLearner/Vuejs\u learn/vue-cli3-tutorial/vue cli new
10.vue cli-new@0.1.0~serve:Args:['-c',vue cli服务serve']
11.vue cli-new@0.1.0~serve:返回:代码:1信号:null
12信息生命周期vue cli-new@0.1.0~serve:无法执行serve脚本
13详细堆栈错误:vue cli-new@0.1.0serve:`vue cli服务serve`
13详细堆栈退出状态1
13 EventEmitter上的详细堆栈。(/usr/local/lib/node_modules/npm/node_modules/npm lifecycle/index.js:332:16)
13 EventEmitter.emit上的详细堆栈(events.js:315:20)
13子进程上的详细堆栈。(/usr/local/lib/node_modules/npm/node_modules/npm lifecycle/lib/spawn.js:55:14)
13 ChildProcess.emit上的详细堆栈(events.js:315:20)
13 maybeClose的详细堆栈(internal/child_process.js:1026:16)
13 Process.ChildProcess.\u handle.onexit处的详细堆栈(internal/child\u Process.js:286:5)
14详细的pkgid vue cli-new@0.1.0
15详细cwd/Users/arul/selfLearner/Vuejs_learn/vue-cli3-tutorial/vue cli新建
16详细达尔文19.2.0
17详细argv“/usr/local/ceral/node/13.12.0/bin/node”“/usr/local/bin/npm”“运行”“服务”
18详细节点v13.12.0
19详细的npm v6.14.4
20错误代码ELIFECYCLE

EADDRNOTAVAIL
通过操作系统来自计算机的网络代码

当它来自
listen()
调用时,意味着您试图启动服务器(在您的情况下是nodejs web服务器)以在不存在的Internet协议(IP)地址上服务传入请求。在您的情况下,坏地址是
36.86.63.182
。端口8080是正确的

如果您使用的是mac或Linux设备,则可以发出命令
ifconfig
。它将显示有关网络接口的混乱信息。要仅提取Internet协议地址,请使用以下命令

ifconfig | grep "inet "
在Windows上,它是

ipconfig | findstr IPv4
我敢打赌,那个列表中没有地址
36.86.63.182
。因此,作为Vue教程的一部分的nodejs服务器正在尝试侦听其他人的IP地址。你不能那样做™. 当您尝试时,您会得到
EADDRNOTAVAIL

在这种情况下,您需要监听地址
0.0.0
,这意味着“此计算机上的所有地址”。否则,监听地址
127.0.0.1
,这意味着此计算机的本地主机环回地址

问题是“为什么它听错了地址?”从这里很难说

您的vue服务器是否配置错误?寻找

如果可能的话,最简单的尝试就是重新启动机器。也许自从你上次启动它以来,一些古怪的配置已经悄悄地出现了

下一步要尝试的是:查找一个环境变量,可能名为
HOST
,它被设置为伪IP地址。在Mac/Linux上

env | grep "36.86.63.182"
在窗户上

set | findstr "36.86.63.182"
如果您发现一个有问题的环境变量,您可以在当前会话中删除它,方法是说Linux/mac(给出您找到的环境变量的名称,这里我使用HOST作为示例)

unset HOST
窗户

set HOST=
那么事情应该会成功


至于永久摆脱伪环境变量,请查阅或寻求帮助。

这是否回答了您的问题?