Use KotlinPaths to access jars

This commit is contained in:
Ilya Chernikov
2019-02-10 12:54:42 +01:00
parent 66107d430e
commit dab97ac936
2 changed files with 14 additions and 12 deletions
@@ -34,6 +34,7 @@ import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.config.KotlinCompilerVersion;
import org.jetbrains.kotlin.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestCaseWithTmpdir;
import org.jetbrains.kotlin.utils.KotlinPaths;
import org.jetbrains.kotlin.utils.PathUtil;
import java.io.File;
@@ -134,9 +135,13 @@ public abstract class KotlinIntegrationTestBase extends TestCaseWithTmpdir {
}
public static File getCompilerLib() {
File file = PathUtil.getKotlinPathsForDistDirectory().getLibPath().getAbsoluteFile();
assertTrue("Lib directory doesn't exist. Run 'ant dist'", file.isDirectory());
return file;
return getKotlinPaths().getLibPath().getAbsoluteFile();
}
public static KotlinPaths getKotlinPaths() {
KotlinPaths paths = PathUtil.getKotlinPathsForDistDirectory();
assertTrue("Compiler dist not found. Build 'dist' target.", paths.getLibPath().isDirectory());
return paths;
}
private static class OutputListener extends ProcessAdapter {
@@ -26,6 +26,7 @@ import org.jetbrains.kotlin.daemon.common.*
import org.jetbrains.kotlin.integration.KotlinIntegrationTestBase
import org.jetbrains.kotlin.progress.CompilationCanceledStatus
import org.jetbrains.kotlin.test.KotlinTestUtils
import org.jetbrains.kotlin.utils.KotlinPaths
import java.io.ByteArrayOutputStream
import java.io.File
import java.io.PrintStream
@@ -50,20 +51,16 @@ class CompilerDaemonTest : KotlinIntegrationTestBase() {
data class CompilerResults(val resultCode: Int, val out: String)
val compilerClassPath = listOf(
File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-compiler.jar")
)
val scriptingCompilerClassPath = listOf(
File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-scripting-compiler.jar"),
File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-scripting-common.jar"),
File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-scripting-jvm.jar")
)
val compilerClassPath = getKotlinPaths().classPath(KotlinPaths.ClassPaths.Compiler)
val compilerWithScriptingClassPath = getKotlinPaths().classPath(KotlinPaths.ClassPaths.CompilerWithScripting)
val daemonClientClassPath = listOf( File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-daemon-client.jar"),
File(KotlinIntegrationTestBase.getCompilerLib(), "kotlin-compiler.jar"))
val compilerId by lazy(LazyThreadSafetyMode.NONE) { CompilerId.makeCompilerId(compilerClassPath) }
val compilerWithScriptingId by lazy(LazyThreadSafetyMode.NONE) {
CompilerId.makeCompilerId(compilerClassPath + scriptingCompilerClassPath)
CompilerId.makeCompilerId(compilerWithScriptingClassPath)
}
private fun compileOnDaemon(clientAliveFile: File, compilerId: CompilerId, daemonJVMOptions: DaemonJVMOptions, daemonOptions: DaemonOptions, vararg args: String): CompilerResults {