Build: fix registration of ClassFileDecompilers extension
This commit is contained in:
@@ -0,0 +1,10 @@
|
|||||||
|
<idea-plugin>
|
||||||
|
<id>org.jetbrains.kotlin</id>
|
||||||
|
<version>1.2</version>
|
||||||
|
|
||||||
|
<extensionPoints>
|
||||||
|
<extensionPoint qualifiedName="com.intellij.psi.classFileDecompiler"
|
||||||
|
interface="com.intellij.psi.compiled.ClassFileDecompilers$Decompiler"
|
||||||
|
dynamic="true"/>
|
||||||
|
</extensionPoints>
|
||||||
|
</idea-plugin>
|
||||||
+1
-2
@@ -40,7 +40,6 @@ public class KotlinCoreApplicationEnvironment extends JavaCoreApplicationEnviron
|
|||||||
registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider.class);
|
registerApplicationExtensionPoint(JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider.class);
|
||||||
|
|
||||||
registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider.class);
|
registerApplicationExtensionPoint(ContainerProvider.EP_NAME, ContainerProvider.class);
|
||||||
registerApplicationExtensionPoint(ClassFileDecompilers.EP_NAME, ClassFileDecompilers.Decompiler.class);
|
|
||||||
|
|
||||||
registerApplicationExtensionPoint(MetaLanguage.EP_NAME, MetaLanguage.class);
|
registerApplicationExtensionPoint(MetaLanguage.EP_NAME, MetaLanguage.class);
|
||||||
|
|
||||||
@@ -52,4 +51,4 @@ public class KotlinCoreApplicationEnvironment extends JavaCoreApplicationEnviron
|
|||||||
protected VirtualFileSystem createJrtFileSystem() {
|
protected VirtualFileSystem createJrtFileSystem() {
|
||||||
return new CoreJrtFileSystem();
|
return new CoreJrtFileSystem();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -509,6 +509,7 @@ class KotlinCoreEnvironment private constructor(
|
|||||||
val applicationEnvironment = KotlinCoreApplicationEnvironment.create(parentDisposable, unitTestMode)
|
val applicationEnvironment = KotlinCoreApplicationEnvironment.create(parentDisposable, unitTestMode)
|
||||||
|
|
||||||
registerApplicationExtensionPointsAndExtensionsFrom(configuration, "extensions/compiler.xml")
|
registerApplicationExtensionPointsAndExtensionsFrom(configuration, "extensions/compiler.xml")
|
||||||
|
registerApplicationExtensionPointsAndExtensionsFrom(configuration, "extensions/core.xml")
|
||||||
|
|
||||||
registerApplicationServicesForCLI(applicationEnvironment)
|
registerApplicationServicesForCLI(applicationEnvironment)
|
||||||
registerApplicationServices(applicationEnvironment)
|
registerApplicationServices(applicationEnvironment)
|
||||||
@@ -692,4 +693,4 @@ class KotlinCoreEnvironment private constructor(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-5
@@ -50,7 +50,7 @@ public class JUnit3RunnerWithInnersForJPS extends Runner implements Filterable,
|
|||||||
public JUnit3RunnerWithInnersForJPS(Class<?> klass) {
|
public JUnit3RunnerWithInnersForJPS(Class<?> klass) {
|
||||||
this.klass = klass;
|
this.klass = klass;
|
||||||
requestedRunners.add(klass);
|
requestedRunners.add(klass);
|
||||||
ensureCompilerXmlExists();
|
ensureCompilerExtensionFilesExists();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -86,14 +86,19 @@ public class JUnit3RunnerWithInnersForJPS extends Runner implements Filterable,
|
|||||||
* compiler.xml needs to be in both compiler & ide module for tests execution.
|
* compiler.xml needs to be in both compiler & ide module for tests execution.
|
||||||
* To avoid file duplication copy it to the out dir idea module before test execution.
|
* To avoid file duplication copy it to the out dir idea module before test execution.
|
||||||
*/
|
*/
|
||||||
private static void ensureCompilerXmlExists() {
|
private static void ensureCompilerExtensionFilesExists() {
|
||||||
String compilerXmlSourcePath = "compiler/cli/cli-common/resources/META-INF/extensions/compiler.xml";
|
copyCompilerResourceFile("compiler.xml");
|
||||||
|
copyCompilerResourceFile("core.xml");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void copyCompilerResourceFile(String fileName) {
|
||||||
|
String compilerXmlSourcePath = "compiler/cli/cli-common/resources/META-INF/extensions/" + fileName;
|
||||||
|
|
||||||
String jpsTargetDirectory = "out/production/kotlin.idea.main";
|
String jpsTargetDirectory = "out/production/kotlin.idea.main";
|
||||||
String pillTargetDirectory = "out/production/idea.main";
|
String pillTargetDirectory = "out/production/idea.main";
|
||||||
|
|
||||||
String baseDir = Files.exists(Paths.get(jpsTargetDirectory)) ? jpsTargetDirectory : pillTargetDirectory;
|
String baseDir = Files.exists(Paths.get(jpsTargetDirectory)) ? jpsTargetDirectory : pillTargetDirectory;
|
||||||
String compilerXmlTargetPath = baseDir + "/META-INF/extensions/compiler.xml";
|
String compilerXmlTargetPath = baseDir + "/META-INF/extensions/" + fileName;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Path targetPath = Paths.get(compilerXmlTargetPath);
|
Path targetPath = Paths.get(compilerXmlTargetPath);
|
||||||
@@ -176,4 +181,4 @@ public class JUnit3RunnerWithInnersForJPS extends Runner implements Filterable,
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user