Ich habe das Proximo-Add-on auf Heroku installiert und wenn ich den Befehl meinem vorhandenen Befehl voranstelle, bekomme ich eine BindException von Java. So sieht mein vorangestelltes Kommando aus: web: bin/proximo sh target/bin/webapp
und sobald ich den Proximo Teil entferne (bin/proximo
), startet die Anwendung ohne Fehler.Wie man java.net.BindException mit Proximo auf Heroku repariert?
Dies ist der vollständige Stacktrace. Was vermisse ich?
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)
Obwohl ich die gleiche Ausnahme wie Visher in diesem Beitrag http://stackoverflow.com/questions/8965155/cannot-assign-requested-address-jvm-bind es ist nicht das gleiche Problem. Ich benutze eine Java-App auf Heroku und benutze das Add-on Proximo, um den gesamten ausgehenden TCP-Verkehr zu übertragen. Beim Start zeigen die Protokolle Folgendes an (Proxy-Verkehr für 0.0.0.0/0 über Proximo-Host XX.XX.XX.XXX:1080 gebunden). Also scheint das Proximo Add-On korrekt installiert und konfiguriert zu sein. Die Anwendung wird jedoch aufgrund der BindException angehalten. Ich starte meinen eigenen ServerSocket nicht - er wird vom Proximo Add-In gehandhabt. –
Ich habe gerade einen Netstat | grep "1080" (1080 ist der Port, an den Proximo zu binden versucht), aber nichts wird angezeigt (d. h. der Port ist nicht belegt). Wenn ich versuche, die IP allein zu pingen, bekomme ich "Request Timeout" und wenn ich versuche, die IP an Port 1080 zu pingen, bekomme ich "konnte Host nicht finden". Ich vermute, dass die IP (und der Port), an die Proximo zu binden versucht, irgendwie vom Server erkannt werden muss (Heroku läuft von Amazon-Servern). Gibt es einen Weg, dies zu erreichen? Jede Hilfe wird sehr geschätzt. –