in boot/src/main/java/org/apache/karaf/minho/boot/Main.java [33:64]
public static final void main(String[] args) throws Exception {
boolean minhoJar = false;
minhoJar = (System.getenv("MINHO_JAR") != null) ? System.getenv("MINHO_JAR").equalsIgnoreCase("true") : minhoJar;
minhoJar = (System.getProperty("minho.jar") != null) ? System.getProperty("minho.jar").equalsIgnoreCase("true") : minhoJar;
if (!minhoJar) {
log.info("Starting runtime in exploded mode");
// try to load classpath
String minhoLib = (System.getProperty("minho.lib") != null) ? System.getProperty("minho.lib") : System.getProperty("user.dir");
System.out.println("Minho lib: " + minhoLib);
Path libFolder = Paths.get(minhoLib);
ArrayList<URL> urls = new ArrayList<URL>();
System.out.print("Loaded libraries: ");
System.out.print(libFolder.toFile().toURI().toURL() + ":");
urls.add(libFolder.toFile().toURI().toURL());
Files.walkFileTree(libFolder, new SimpleFileVisitor<>() {
public FileVisitResult visitFile(Path file, BasicFileAttributes attributes) throws IOException {
if (!Files.isDirectory(file)) {
System.out.print(file.toFile().toURI().toURL() + ":");
urls.add(file.toFile().toURI().toURL());
}
return FileVisitResult.CONTINUE;
}
});
System.out.println();
URLClassLoader classLoader = new URLClassLoader(urls.toArray(new URL[]{}));
Thread.currentThread().setContextClassLoader(classLoader);
} else {
log.info("Starting runtime in uber jar mode");
}
Minho.builder().build().start();
}