运行ng服务命令时,“端口4200已经在使用”
我正在学习angular 2,并且第一次使用角度CLI项目来创建沙箱项目。运行ng服务命令时,“端口4200已经在使用”
我能够运行命令“ng serve”,它工作得很好。我想阻止它运行,所以我跑了“控制Z”。
当我试图再次运行“ng-serve”命令时,它给了我“端口4200已被使用”。
我运行“PS”获取PID的列表,并为angular-cli终止PID并再次运行“ng-serve”,但它仍然给出相同的端口使用错误。
这是我用来杀死端口进度4200
sudo kill $(sudo lsof -t -i:4200)
你也可以试试这个:
sudo kill `sudo lsof -t -i:4200`
对于Windows用户:
端口号4200已经在使用。在CMD下面命令类型:
netstat -a -n -o
,然后找到合适的端口号为4200的端口点击终端,点击查找,在“查找内容”中输入4200,然后单击“查找下一个”: 比方说您发现该端口号4200在cmd中使用以下命令PID 18932.类型:
taskkill -f /pid 18932
不按CTRL + Z, 你必须停止CTRL运行+ C 它的工作,我检查
同意...同样发生在我身上.. –
打开cmd.exe
为administrator
,
然后找到的PID
port 4200
netstat -ano | findstr :4200
在这里,我有3个PID:
- 红一个是“NG - “(127.0.0 1.1:4200),其
LISTENING
- 绿色一个是从 “浏览器”
只杀端口4200(杀红PID):
taskkill /PID 15940 /F
注:杀绿人会只强制性地关闭浏览器。
现在你可以做 “NG-服务” 在同一端口上启动您的角度应用4200
其他的东西:
One liner:寻找一种方式来优化这个之后,下面是这个答案的一个衬命令:(特别感谢:Josep Alsina此提示)
for /f "tokens=5" %a in ('netstat -ano ^| find "4200" ^| find "LISTENING"') do taskkill /f /pid %a
ng serve --port 4201 --live-reload-port 4200
,并使用localhost:4201
这应该作为一个临时的解决方案访问。
或
尝试利用上市lsof -i:4200
端口使用情况,并杀死它使用手动sudo kill -9 <Process PID using port 4200>
我们可以有力地杀灭通过以下命令的端口。
kill -2 $(lsof -t -i:4200)
如果您在CMD和IDE中编译角JS代码,则会发生此问题。在CMD中,只要你在IDE中改变你的角JS代码,然后你的IDE想要占用相同的端口,即CMD已经占用的4200,你的角JS代码就会自动编译 因此,这个问题有一个简单的解决方案,就是关闭你的cmd,同时在IDE中编译你的代码。
当您使用Ctrl+Z
时,您将暂停正在运行的任务,但不会终止它。您稍后可以使用命令fg
恢复任务。 如果你想退出ng serve
,你应该使用Ctrl+C
来代替,其中也会释放4200端口。
我每次必须杀死端口时都面临同样的问题。
我试过./node_modules/.bin/ng serve --proxy-config proxy.conf.json --host 0.0.0.0
而不是npm start
及其作品
尝试这样
ng serve --port 4201
这可能不是每种情况下的解决方案,因为在开发期间,可能会依赖localhost特定的URL和端口来将CORS列入白名单 – user776686
你也可以用这个尝试运行Visual Studio代码应用程序的不同端口上运行 - :
ng serve --open --port 4201
你可以给任何端口号。
最简单的一行命令:
sudo fuser -k 4200/tcp
在Linux Mint的17启动角的应用程序,这是工作。
kill -9 $(lsof -t -i:4200)
它有可能改变端口.angular-cli
文件。例如:
"defaults": {
"styleExt": "css",
"component": {},
"serve": {
"port": 4205
}
}
此外,有必要把它添加到您的package.json
:
"ng": "ng",
"start": "ng serve"
这不适用于Windows用户 – Hinrich
虽然我意识到这是正确的解决方案,但这似乎不是一个可怕的解决方案吗?如果我想在另一个目录上运行''ng serve'',该怎么办?以这种方式杀死服务器,然后在其他地方重新启动它,或者我错过了什么? –
您可以指定一个不同的端口: '--port' –
manatico