Do not use hardcoded plugin ID for update checks
When Kotlin plugin is bundled into another plugin, there won't be a plugin with ID org.jetbrains.kotlin registered in PluginManager, which leads to runtime exceptions. To fix that let's determine the plugin ID dynamically instead.
This commit is contained in:
committed by
Nikolay Krasko
parent
f5e78a89bc
commit
53946456cf
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea;
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptor;
|
||||
import com.intellij.ide.plugins.PluginManager;
|
||||
import com.intellij.ide.plugins.PluginManagerCore;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.PluginId;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -15,7 +16,15 @@ import java.util.Arrays;
|
||||
|
||||
public class KotlinPluginUtil {
|
||||
|
||||
public static final PluginId KOTLIN_PLUGIN_ID = PluginId.getId("org.jetbrains.kotlin");
|
||||
public static final PluginId KOTLIN_PLUGIN_ID;
|
||||
|
||||
static {
|
||||
PluginId pluginId = PluginManagerCore.getPluginByClassName(KotlinPluginUtil.class.getName());
|
||||
if (pluginId == null && ApplicationManager.getApplication().isUnitTestMode()) {
|
||||
pluginId = PluginId.getId("org.jetbrains.kotlin");
|
||||
}
|
||||
KOTLIN_PLUGIN_ID = pluginId;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static String getPluginVersion() {
|
||||
|
||||
Reference in New Issue
Block a user