ng serve拒绝使用任何端口。
ng serve拒绝使用任何端口。
我有一个Angular应用程序无法运行。它一直显示“端口1234已被占用。请使用“--port”指定一个不同的端口。”,但这是胡扯,因为它对我输入的任何端口号都会这样说。我知道这些端口没有被占用,因为我没有在使用它们。如果我运行类似于“live-server”的东西,它可以在端口3000上正常运行。我关闭它并告诉“ng serve”使用端口3000,然后它又表现得好像端口3000被占用了。
我已经重新启动了我的MacBook,尝试了像“lsof -t -i tcp:80 -s tcp:listen | sudo xargs kill”这样的命令,但没有任何帮助。
我在另一个目录中有一个不同的Angular应用程序,在运行“ng serve”时可以正常工作,但目前它没有运行,不应该阻止我正在尝试开发的特定应用程序。
我访问了“Port 4200 is already in use” when running the ng serve command”并且那里的解决方案似乎都没有起作用。
我相当确定除了保留的端口以外,现在没有其他端口被占用。如果我打开一个React项目并运行“npm run start”,它会愉快地打开在端口3000上,而如果我尝试使用Angular的3000或任何其他端口号,它都会失败。所以这不是其他进程占用端口的问题。
这是Angular CLI 6.1.10版本。
ng serve refuses to use any port的问题可能是由于portfinder的问题引起的。可以通过在package.json的devDependencies中明确声明portfinder的版本来解决该问题。
"devDependencies": {
"@angular-devkit/build-angular": "~0.7.0",
"@angular/cli": "6.1.3",
"portfinder": "1.0.20"
}
参考链接:[https://github.com/angular/angular-cli/issues/15369](https://github.com/angular/angular-cli/issues/15369)