打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用Eclipse中的更新配置界面
在Eclipse中的众多特性中有一条可以自动更新的功能,
我们可能在实际使用中也需要Eclipse那样的更新功能,而Eclipse提供了更新和管理插件的配置对话框,在这里我们可用发扬发扬"拿来主义",直接拿过来用,过程很简单,步骤如下
新建一个插件项目,然后打开 plugin.xml 文件,切换到 Extensions 选项卡,增加"org.eclipse.ui.actionSets" 扩展点,然后新建如下节点
下面是整个plugin.xml 文件内容
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<extension
id="application"
point="org.eclipse.core.runtime.applications">
<application>
<run
class="updateandinstall.Application">
</run>
</application>
</extension>
<extension
point="org.eclipse.ui.perspectives">
<perspective
name="Perspective"
class="updateandinstall.Perspective"
id="UpdateAndInstall.perspective">
</perspective>
</extension>
<extension
point="org.eclipse.ui.views">
<view
name="View"
class="updateandinstall.View"
id="UpdateAndInstall.view">
</view>
</extension>
<extension
point="org.eclipse.ui.actionSets">
<actionSet
id="SMS.actionSet1"
label="软件更新">
<menu
id="SMS.menu3"
label="软件更新">
<separator
name="group0">
</separator>
<separator
name="group1">
</separator>
</menu>
<action
class="updateandinstall.actions.InstallWizardAction"
disabledIcon="icons/update/usearch_obj.gif"
icon="icons/update/usearch_obj.gif"
id="SMS.action3"
label="查找并安装"
style="push">
</action>
<action
class="updateandinstall.actions.ConfigurationManagerAction"
disabledIcon="icons/update/configs.gif"
icon="icons/update/configs.gif"
id="SMS.action4"
label="配置管理"
style="push">
</action>
</actionSet>
</extension>
</plugin>
我们要使这个扩展菜单项生效,必须要新建对应的Action类来负责执行操作,先来看"查找并安装"对应的Action类  InstallWizardAction .java
package updateandinstall.actions;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
import org.eclipse.ui.PlatformUI;
import org.eclipse.update.ui.UpdateManagerUI;
public class InstallWizardAction extends Action implements IWorkbenchWindowActionDelegate{
private IWorkbenchWindow window;
public InstallWizardAction(){
}
public void dispose() {
// TODO 自动生成方法存根
}
public void init(IWorkbenchWindow window) {
this.window=window;
}
public void run(IAction action) {
openInstaller(PlatformUI.getWorkbench().getActiveWorkbenchWindow());
}
public void selectionChanged(IAction action, ISelection selection) {
// TODO 自动生成方法存根
}
private void openInstaller(final IWorkbenchWindow window){
BusyIndicator.showWhile(window.getShell().getDisplay(),new Runnable(){
public void run(){
UpdateManagerUI.openInstaller(window.getShell());
}
});
}
}
我们通过这个类直接调用更新管理器中提供的API就行了
"配置管理" 对应的Action类  ConfigurationManagerAction .java
package updateandinstall.actions;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
import org.eclipse.update.ui.UpdateManagerUI;
public class ConfigurationManagerAction implements IWorkbenchWindowActionDelegate{
private IWorkbenchWindow window;
public void dispose() {
// TODO 自动生成方法存根
}
public void init(IWorkbenchWindow window) {
this.window=window;
}
public void run(IAction action) {
BusyIndicator.showWhile(window.getShell().getDisplay(),new Runnable(){
public void run(){
UpdateManagerUI.openConfigurationManager(window.getShell());
}
});
}
public void selectionChanged(IAction action, ISelection selection) {
// TODO 自动生成方法存根
}
}
这样的话我们就可以使用Eclipse中更新管理器中的更新功能了,在程序打包的时候好记得把关于更新的插件给打包进去就行了
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用Eclipse RCP进行桌面程序开发(二):菜单、工具栏和对话框 - 海边沫沫 - ...
使用Eclipse RCP创建视图并实现视图间消息传递
Rcp Edit 扩展编辑器
扩展控制台(org.eclipse.ui.console.consoleFactories)
使用Eclipse RCP创建视图并实现视图间消息传递(二)
RCP Editor 常见错误处理方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服