我正在尝试运行我的Play2项目。当我在终端中输入激活器运行时,它正在加载并最终给我这个错误消息:
p.c.s.NettyServer - Failed to listen for HTTP on /0.0.0.0:9000!
但我没有在这个端口上设置任何东西,我的终端没有后台进程。为什么会出现这个错误?
由于您可以使用另一个端口启动它,这意味着某些东西确实在使用该端口。它可能是一个不同的应用程序或之前停止的激活/播放的开始。
要找出使用它的内容,您可以在Linux中使用lsof
:
$ lsof -i :9000
一旦找到它的pid,你就可以停止这个过程了。
如果该端口被另一个服务使用并且您确实需要它,而不是始终提供run
命令的端口,您可以尝试添加到您的sbtopts(在~/.sbtopts
文件或SBT_OPTS
env var中):
-Dhttp.port=9876
sudo lsof -i : <port>
然后你得到pId(consilder只有java pId),在命令下运行
kill -9 <pId>