如何在Heroku上使用Proximo修复java.net.BindException?

Sør*_*sen 5 java heroku proximo

我已经在Heroku上安装了Proximo插件,当我将命令添加到现有命令时,我从Java获得了BindException.这是我的prepended命令的外观:web: bin/proximo sh target/bin/webapp并且一旦我删除Proximo part(bin/proximo),应用程序就会启动而没有错误.

这是完整的堆栈跟踪.我错过了什么?

Exception in thread "main" java.net.BindException: Cannot assign requested address
 at sun.nio.ch.Net.bind0(Native Method)
 at sun.nio.ch.Net.bind(Net.java:344)
 at sun.nio.ch.Net.bind(Net.java:336)
 at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:199)
 at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
 at org.eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.java:162)
 at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:297)
 at org.eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:240)
 at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58)
 at org.eclipse.jetty.server.Server.doStart(Server.java:270)
 at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58)
Run Code Online (Sandbox Code Playgroud)

Har*_*Raj 0

它与使用端口 9999 的另一个进程相关。在 Windows 上,运行以下命令:

netstat -a -n | find "LIST"
Run Code Online (Sandbox Code Playgroud)

它应该列出所有占用端口的东西。当然,您随后必须在任务管理器中手动终止这些程序。如果这仍然不起作用,请更换该行:

serverSocket = new ServerSocket(9999);
Run Code Online (Sandbox Code Playgroud)

和:

InetAddress locIP = InetAddress.getByName("192.168.1.20");
serverSocket = new ServerSocket(9999, 0, locIP);
Run Code Online (Sandbox Code Playgroud)

使用 127.0.0.1 和您的实际 IP 地址。


归档时间:

查看次数:

587 次

最近记录:

11 年,3 月 前