赞
踩
idea启动过程中,并不会自动去插件市场检查插件是否有更新。发布插件后,需要用户重启IDE,或者点击help -> check for updates,体验不太好。
可以通过以下步骤来实现插件更新:
这些操作依赖一些IntelliJ的open API:
String pluginId = "从plugin.xml中id属性获取";
public static String getVersion() {
IdeaPluginDescriptor pluginDescriptor = PluginManagerCore.getPlugin(pluginId);
if (pluginDescriptor == null) {
return null;
}
return pluginDescriptor.getVersion();
}
可以放在notification中,用户点击安装更新后,再执行此操作。
ShowSettingsUtil.getInstance().showSettingsDialog(project, "Plugins")
如果不手动调用更新API,IDE在不重启或者点击check for update菜单的情况下,不会去插件市场检查插件是否有更新。
UpdateSettings settingsCopy = new UpdateSettings();
settingsCopy.getState().copyFrom((BaseState)UpdateSettings.getInstance().getState());
settingsCopy.getState().setCheckNeeded(true);
settingsCopy.getState().setPluginsCheckNeeded(true);
settingsCopy.getState().setThirdPartyPluginsAllowed(true);
settingsCopy.getState().setShowWhatsNewEditor(false);
UpdateChecker.updateAndShowResult(project, settingsCopy);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。