A method to find local VirtualFile for Kotlin runtime library
This commit is contained in:
@@ -232,12 +232,8 @@ public class KotlinRuntimeLibraryUtil {
|
||||
jarNotFoundHandler.run();
|
||||
return;
|
||||
}
|
||||
VirtualFile runtimeJar = getKotlinRuntimeJar(project);
|
||||
VirtualFile runtimeJar = getLocalKotlinRuntimeJar(project);
|
||||
assert runtimeJar != null;
|
||||
VirtualFile jarFile = JarFileSystem.getInstance().getVirtualFileForJar(runtimeJar);
|
||||
if (jarFile != null) {
|
||||
runtimeJar = jarFile;
|
||||
}
|
||||
|
||||
try {
|
||||
FileUtil.copy(runtimePath, new File(runtimeJar.getPath()));
|
||||
@@ -278,6 +274,18 @@ public class KotlinRuntimeLibraryUtil {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static VirtualFile getLocalKotlinRuntimeJar(@NotNull Project project) {
|
||||
VirtualFile kotlinRuntimeJar = getKotlinRuntimeJar(project);
|
||||
if (kotlinRuntimeJar == null) return null;
|
||||
|
||||
VirtualFile localJarFile = JarFileSystem.getInstance().getVirtualFileForJar(kotlinRuntimeJar);
|
||||
if (localJarFile != null) {
|
||||
return localJarFile;
|
||||
}
|
||||
return kotlinRuntimeJar;
|
||||
}
|
||||
|
||||
public static abstract class FindRuntimeLibraryHandler {
|
||||
@Nullable
|
||||
public abstract File getRuntimeJarPath();
|
||||
|
||||
Reference in New Issue
Block a user