diff --git a/idea/resources-descriptors/META-INF/plugin.xml b/idea/resources-descriptors/META-INF/plugin.xml
index b62fd98c138..b0db6623389 100644
--- a/idea/resources-descriptors/META-INF/plugin.xml
+++ b/idea/resources-descriptors/META-INF/plugin.xml
@@ -74,6 +74,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
+
diff --git a/idea/resources-descriptors/META-INF/plugin.xml.193 b/idea/resources-descriptors/META-INF/plugin.xml.193
index e0b9060504b..7856d28346b 100644
--- a/idea/resources-descriptors/META-INF/plugin.xml.193
+++ b/idea/resources-descriptors/META-INF/plugin.xml.193
@@ -80,6 +80,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
+
diff --git a/idea/resources-descriptors/META-INF/plugin.xml.202 b/idea/resources-descriptors/META-INF/plugin.xml.202
index 990be1ae805..91f727d1ca7 100644
--- a/idea/resources-descriptors/META-INF/plugin.xml.202
+++ b/idea/resources-descriptors/META-INF/plugin.xml.202
@@ -74,6 +74,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
+
diff --git a/idea/resources-descriptors/META-INF/plugin.xml.as40 b/idea/resources-descriptors/META-INF/plugin.xml.as40
index e5bb7d31569..aaf86185a64 100644
--- a/idea/resources-descriptors/META-INF/plugin.xml.as40
+++ b/idea/resources-descriptors/META-INF/plugin.xml.as40
@@ -79,6 +79,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
+
diff --git a/idea/resources-descriptors/META-INF/plugin.xml.as41 b/idea/resources-descriptors/META-INF/plugin.xml.as41
index 98a013c9f4f..1090d87d328 100644
--- a/idea/resources-descriptors/META-INF/plugin.xml.as41
+++ b/idea/resources-descriptors/META-INF/plugin.xml.as41
@@ -73,6 +73,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
+
diff --git a/idea/src/org/jetbrains/kotlin/idea/PluginStartupActivity.java b/idea/src/org/jetbrains/kotlin/idea/PluginStartupActivity.java
index 56a4fa4c3ef..1f1d0d4d10e 100644
--- a/idea/src/org/jetbrains/kotlin/idea/PluginStartupActivity.java
+++ b/idea/src/org/jetbrains/kotlin/idea/PluginStartupActivity.java
@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.idea;
import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.application.PathMacros;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.EditorFactory;
@@ -39,15 +38,12 @@ import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinTodoSearcher;
import org.jetbrains.kotlin.js.resolve.diagnostics.ErrorsJs;
import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm;
import org.jetbrains.kotlin.resolve.konan.diagnostics.ErrorsNative;
-import org.jetbrains.kotlin.utils.PathUtil;
import static org.jetbrains.kotlin.idea.TestResourceBundleKt.registerAdditionalResourceBundleInTests;
public class PluginStartupActivity implements StartupActivity {
private static final Logger LOG = Logger.getInstance(PluginStartupActivity.class);
- private static final String KOTLIN_BUNDLED_PATH_VARIABLE = "KOTLIN_BUNDLED";
-
@Override
public void runActivity(@NotNull Project project) {
if (ApplicationManager.getApplication().isUnitTestMode()) {
@@ -56,7 +52,6 @@ public class PluginStartupActivity implements StartupActivity {
StartupCompatKt.runActivity(project);
- registerPathVariable();
initializeDiagnostics();
try {
@@ -113,9 +108,4 @@ public class PluginStartupActivity implements StartupActivity {
factory.getClass();
}
- private static void registerPathVariable() {
- PathMacros macros = PathMacros.getInstance();
- macros.setMacro(KOTLIN_BUNDLED_PATH_VARIABLE, PathUtil.getKotlinPathsForIdeaPlugin().getHomePath().getPath());
- }
-
}
diff --git a/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt b/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt
new file mode 100644
index 00000000000..c9fe9c60dfb
--- /dev/null
+++ b/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
+ * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
+ */
+
+package org.jetbrains.kotlin.idea
+
+import com.intellij.ide.ApplicationInitializedListener
+import com.intellij.openapi.application.PathMacros
+import org.jetbrains.kotlin.idea.util.application.isUnitTestMode
+import org.jetbrains.kotlin.utils.PathUtil.kotlinPathsForIdeaPlugin
+
+class PluginStartupListener : ApplicationInitializedListener {
+
+ override fun componentsInitialized() {
+ if (isUnitTestMode()) return
+
+ registerPathVariable()
+ }
+
+ private fun registerPathVariable() {
+ val macros = PathMacros.getInstance()
+ macros.setMacro(KOTLIN_BUNDLED_PATH_VARIABLE, kotlinPathsForIdeaPlugin.homePath.path)
+ }
+
+ companion object {
+ const val KOTLIN_BUNDLED_PATH_VARIABLE = "KOTLIN_BUNDLED"
+ }
+}
\ No newline at end of file
diff --git a/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt.192 b/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt.192
new file mode 100644
index 00000000000..162241ab90f
--- /dev/null
+++ b/idea/src/org/jetbrains/kotlin/idea/PluginStartupListener.kt.192
@@ -0,0 +1,9 @@
+/*
+ * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
+ * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
+ */
+
+package org.jetbrains.kotlin.idea
+
+class PluginStartupListener {
+}
\ No newline at end of file