make the java launcher handle the Firefox launch automatically if the router is already running
This commit is contained in:
@ -10,8 +10,8 @@ VERSIONMINOR=8
|
|||||||
VERSIONBUILD=1
|
VERSIONBUILD=1
|
||||||
I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
||||||
export I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
export I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
||||||
VERSION=i2p-1.8.1
|
VERSION=i2p-1.8.8
|
||||||
export VERSION=i2p-1.8.1
|
export VERSION=i2p-1.8.0
|
||||||
|
|
||||||
#Uncomment this to build from the tip of the master.
|
#Uncomment this to build from the tip of the master.
|
||||||
#I2P_VERSION=1.8.0
|
#I2P_VERSION=1.8.0
|
||||||
|
@ -2,6 +2,7 @@ package net.i2p.router;
|
|||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
|
import java.net.ServerSocket;
|
||||||
import java.net.Socket;
|
import java.net.Socket;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.logging.FileHandler;
|
import java.util.logging.FileHandler;
|
||||||
@ -92,15 +93,21 @@ public class WinLauncher {
|
|||||||
RouterLaunch.main(args);
|
RouterLaunch.main(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// see https://stackoverflow.com/questions/434718/sockets-discover-port-availability-using-java
|
||||||
|
public static boolean isAvailable(int portNr) {
|
||||||
|
boolean portFree;
|
||||||
|
try (var ignored = new ServerSocket(portNr)) {
|
||||||
|
portFree = true;
|
||||||
|
} catch (IOException e) {
|
||||||
|
portFree = false;
|
||||||
|
}
|
||||||
|
return portFree;
|
||||||
|
}
|
||||||
|
|
||||||
private static boolean i2pIsRunning() {
|
private static boolean i2pIsRunning() {
|
||||||
// check if there's something listening on port 7657
|
// check if there's something listening on port 7657
|
||||||
try {
|
if (!isAvailable(7657)) {
|
||||||
InetAddress localhost = InetAddress.getLocalHost();
|
|
||||||
Socket s = new Socket(localhost, 7657);
|
|
||||||
s.close();
|
|
||||||
return true;
|
return true;
|
||||||
} catch (IOException e) {
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
// check for the existence of router.ping file, if it's less then 2 minutes old,
|
// check for the existence of router.ping file, if it's less then 2 minutes old,
|
||||||
// exit
|
// exit
|
||||||
@ -113,6 +120,7 @@ public class WinLauncher {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final Runnable REGISTER_UPP = () -> {
|
private static final Runnable REGISTER_UPP = () -> {
|
||||||
|
@ -212,10 +212,6 @@ Applications:
|
|||||||
Copyright (c) 2006, Matthew Estes
|
Copyright (c) 2006, Matthew Estes
|
||||||
See licenses/LICENSE-BlockFile.txt
|
See licenses/LICENSE-BlockFile.txt
|
||||||
|
|
||||||
BOB (BOB.jar):
|
|
||||||
Copyright (C) sponge
|
|
||||||
See licenses/COPYING-BOB.txt
|
|
||||||
|
|
||||||
Desktopgui (desktopgui.jar):
|
Desktopgui (desktopgui.jar):
|
||||||
Copyright (c) Mathias De Maré
|
Copyright (c) Mathias De Maré
|
||||||
See licenses/LICENSE-DesktopGUI.txt
|
See licenses/LICENSE-DesktopGUI.txt
|
||||||
@ -339,9 +335,9 @@ Applications:
|
|||||||
Systray (systray.jar):
|
Systray (systray.jar):
|
||||||
Public domain.
|
Public domain.
|
||||||
|
|
||||||
Tomcat 9.0.54 (jasper-runtime.jar):
|
Tomcat 9.0.62 (jasper-runtime.jar):
|
||||||
(not included in most distribution packages)
|
(not included in most distribution packages)
|
||||||
Copyright 1999-2021 The Apache Software Foundation
|
Copyright 1999-2022 The Apache Software Foundation
|
||||||
See licenses/LICENSE-Apache2.0.txt
|
See licenses/LICENSE-Apache2.0.txt
|
||||||
See licenses/NOTICE-Tomcat.txt
|
See licenses/NOTICE-Tomcat.txt
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
Apache Tomcat
|
Apache Tomcat
|
||||||
Copyright 1999-2021 The Apache Software Foundation
|
Copyright 1999-2022 The Apache Software Foundation
|
||||||
|
|
||||||
This product includes software developed at
|
This product includes software developed at
|
||||||
The Apache Software Foundation (https://www.apache.org/).
|
The Apache Software Foundation (https://www.apache.org/).
|
||||||
|
Reference in New Issue
Block a user