插件开发常见问题整理

来源:互联网 发布:新浪微博个性域名修改 编辑:程序博客网 时间:2024/05/29 18:32

1.添加第三方包以后,调试运行没错,导出后程序无法运行或无法导出。

 

这个问题是新手最常见的问题了,由于普通的java项目配置第三方jar包,都是直接配置Build-Path的(实际上是修改了项目下的.class-path文件),但是在插件项目中,还需要修改MANIFEST.MF文件。

 

最简单的正确方法 就是在plugin.xml,runtime一页中,class-path处,点add,添加jar包(弹出的对话框下面有个选项update build-path要选中),这样操作会自动修改两个文件。

 

2. org.eclipse.core.internal.resources.ResourceException: A resource exists with a different case: '/test/aaa/bbb.txt'.

 

 

这个是由于Windows平台文件名不区分大小写,而Eclipse平台的资源系统则是区分大小写的,那么如果在IResource里调用 exists()方法的时候,如果有同名但大小写不同的文件存在的话,同样会返回false;于是程序试图去创建文件的时候就抛出了这个异常。

 

3. plugin.xml文件中,指定国际化字符串(%key)的时候无效。

 

 

这个问题是由于在插件的MANIFEST.MF文件中缺少了

 

Bundle-Localization: plugin

 

这一行为系统指定为plugin.xml自动寻找plugin.properties文件作为资源文件,没有这一行就不会自动去找。

 

4.向导中,取得的selection为空。

 


原因可能是,在plugin.xml中注册向导的时候,为向导添加了一个selection的子节点,指定了一个类型,而进入向导的时候的选中类型并非指定的类型。


5.向导的canFinishEarly属性


这个属性设为true的时候,效果是在菜单栏File--->New--->Other,弹出向导选择对话框的时候,选中你的向导,此时的Finish的按钮就已经可用了。(并非是指的多页向导可以在第一页完成)

6.RCP程序打开多个窗口的时候,任务栏图标变成eclipse。


这种情况一般是RCP导出的时候,使用了默认的launcher配置,只需修改默认配置,提供一个程序名,和图标资源,然后重新导出一个exe文件替换原来的即可。

7.ActionSet里多个Action在工具栏上显示顺序。


是按照这些Action在plugin.xml里定义的顺序相反的顺序出现的,即,后定义的出现在前面。

8. 其他需要注意的问题(潜规则) 

  1. 1) Editor扩展点里的icon属性虽然没有指定为必须,但实际上是必须的,如果不指定icon,editor扩展无效
  2. 2) wizard里createControl()方法里必须调用一下setControl()否则会报IlligalArguments错误
原创粉丝点击