Java 8
Does anyone have any idea what could cause ports not to bind when switching from Java 8 back to Java 7...I'm stumped.
|
What exactly do you mean by "switching back"?
If you were running Java 8 and started your process that relied on a given port then tried to restart that process using Java 7 it may simply be you forgot to stop the original process (or it didn't stop when you thought it did) so the port is still in use. Run "lsof -i :<port>" for the port you're talking about to see if it is already in use. If lsof sees it then it will give you the PID of the process that is using it. |
Quote:
|
Quote:
|
Certainly iptables deals with ports. In fact I'd say that mostly is its purpose though of course it can do NATting and other things.
However, iptables if tied to ports should either allow or forbid them regardless of which application is attempting to use them. You should be able to determine if iptables is your issue simply by stopping it and testing. If it works when iptables is stopped then it means you need to add a rule allowing the port. I'd still suggest looking with lsof -i since you can specify the port easily instead of having to look for it. Linux netstat has some capabilities along those lines but IMHO it is still inferior to what you can glean with lsof. |
Quote:
|
Quote:
Code:
Java 8 running all servers running |
Well as much as I like to brag, I don't like saying I have stumped the panel....I have 4 diffrent forums trying to brain storm with me to figure this out. I have even tried setting it up to run as a java 7 server inside a java 8 environment and same thing...failed to bind port. I also forced it to use IPv4 instead of 6, no change, and I have disabled Netty...nothing seems to work. It woud be a lot easiar for the developer to program his plugin to work with java 8 but thats not gonna happen....I wish I new how to code!
|
Most Java applications expect a certain version of Java and won't run on anything else. (Sometimes they want a very old version which is insecure). It may simply be Minecraft only runs on the one version. The failed to bind port may be a red herring for port 25570 - it may be trying to do something else (e.g. open another port as well) that it isn't telling you about but that is already in use. I notice on your second lsof -i output although 25570 has gone away other ports in the same range are still active.
To verify you can actually LISTEN on port 25570 after stopping the Java application run: nc -l 25570 That should start a local LISTENer on the specified port. If it works you can stop it and you'll know the port itself isn't your issue. You can run strace on your application and see what it is actually doing at the point it gives the failed to bind message. |
Quote:
|
All times are GMT -5. The time now is 07:46 AM. |