Exception itself:
java.net.BindException: Address already in use: JVM_Bind
- Platform: Windows 10 x64
- IDE: IDEA.
- java version "1.8.0_111" Java (TM) SE Runtime Environment (build 1.8.0_111-b14) Java HotSpot (TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
- The application is done on
javaFX.FXML(If it helps) - If I create a new class and describe the creation of a socket there, it will work. But as part of my application on the
serverSocket = new ServerSocket(port);the above mentioned crashes. - The netstat command did not output the ports I used (4444, 4343, 5555, 5454)
Here are the pieces of code:
Main.java :
public class Main extends Application{ private Stage primaryStage; private BorderPane rootLayout; private TaskJournal taskJournal; private Database database; private TMServer server; private TableView<Task> taskTable; private ObservableList<Task> taskList; public Main() { taskJournal = TaskJournalController.getInstance(); database = Database.getInstance(); taskList = taskJournal.getTaskList(); server = new ServerController().getInstance(); } @Override public void start(Stage primaryStage) throws Exception{ this.primaryStage = primaryStage; this.primaryStage.setTitle("Task manager"); initRootLayout(); showTaskOverview(); database.set(Database.DatabaseType.SERIALIZE); taskJournal.start(); AlertingSystemController asc = AlertingSystemController.getInstance(); asc.setObservableList(taskList); asc.showSysTray(); asc.runAlertingSystem(); server.start(); //Запуск сервера } ServerController.java :
public class ServerController implements TMServer { private static ServerController instance; private final int port = 5454; private static ServerSocket serverSocket; public ServerController() { try { System.out.println("run server. Port = " + port); serverSocket = new ServerSocket(port); } catch (IOException e) { e.printStackTrace(); } } public ServerController getInstance() { if(instance == null) { instance = new ServerController(); } return instance; } @Override public void start(){ try { new ConnectController(serverSocket.accept()); } catch (IOException e) { e.printStackTrace(); } } @Override public void stop() { try { serverSocket.close(); } catch (IOException e) { e.printStackTrace(); } } } Full e.printStackTrace();
java.net.BindException: Address already in use: JVM_Bind at java.net.DualStackPlainSocketImpl.bind0(Native Method) at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190) at java.net.ServerSocket.bind(ServerSocket.java:375) at java.net.ServerSocket.<init>(ServerSocket.java:237) at java.net.ServerSocket.<init>(ServerSocket.java:128) at sample.server.controller.ServerController.<init>(ServerController.java:23) at sample.server.controller.ServerController.getInstance(ServerController.java:31) at sample.server.Main.<init>(Main.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$161(LauncherImpl.java:819) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$175(PlatformImpl.java:326) at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) at java.lang.Thread.run(Thread.java:745)
netstat -ashows these ports? - Anton Shchyrovextends Applicationclass Main.netstat -aalso does not show these ports. - Evgeny Tupikov