in src/main/java/org/apache/sling/maven/kickstart/run/PortHelper.java [33:48]
public static synchronized int getNextAvailablePort()
throws MojoExecutionException {
int unusedPort = 0;
do {
try {
final ServerSocket socket = new ServerSocket( 0 );
unusedPort = socket.getLocalPort();
socket.close();
} catch ( final IOException e ) {
throw new MojoExecutionException( "Error getting an available port from system", e );
}
} while ( USED_PORTS.contains(unusedPort));
USED_PORTS.add(unusedPort);
return unusedPort;
}