ForTestCompileStdlib now is invoked in separate process to avoid substituting JarFileSystem and other global components with other incompatible components.

This commit is contained in:
Evgeny Gerashchenko
2012-02-13 18:38:41 +04:00
parent 4dff90734e
commit 30fc19ad82
@@ -55,7 +55,7 @@ public class ForTestCompileStdlib {
finally {
stdlibJar.close();
}
FileUtil.delete(classesDir);
return jarFile;
@@ -82,7 +82,12 @@ public class ForTestCompileStdlib {
private static void compileKotlinPartOfStdlib(File destdir) throws IOException {
// lame
KotlinCompiler.exec("-output", destdir.getPath(), "-src", "./stdlib/ktSrc");
Process exec = Runtime.getRuntime().exec(new String[]{System.getProperty("java.home") + "/bin/java", "-cp", System.getProperty("java.class.path"), KotlinCompiler.class.getName(), "-output", destdir.getPath(), "-src", new File("./stdlib/ktSrc").getAbsolutePath()});
try {
assert exec.waitFor() == 0;
} catch (InterruptedException e) {
throw new AssertionError(e);
}
}
private static List<File> javaFilesInDir(File dir) {