把SWT包装成Plugin需要修改的地方
2007-01-11 10:40
204 查看
把一个SWT程序包装到Eclipse里作为Plugin运行很容易,但有以下几点需要注意:
1、Eclipse的"PDE Tools->Convert Projects to Plug-in Projects"可生成Plugin工程需要的文件,注意原来在classpath里对swt.jar的引用应改为manifest.mf文件里对 org.eclipse.ui的依赖。
2、相对路径文件的使用,在SWT里用ClassLoader.getResourceAsStream()等方法引用的文件放在Plugin里会找不到,应改为FileLocator.toFileURL(Platform.getBundle("plugin.id").getEntry("/images")).getFile();或等效的方式。
3、对本地方法需要的静态链接库dll文件的引用,如果SWT程序是在启动参数里指定的,在Plugin里需要修改,可在系统环境变量里加到Path里。
4、SWT程序的入口类一般会被Editor或View等Plugin元素代替,要注意原来在入口类里初始化的变量也要改到Plugin里,特别是静态变量,正确初始化以防止NullPointerException。
5、必要的话,利用JFace等Plugin特性改写原来的SWT对话框、树、表格等元素,可使UI更具Plugin风格。
1、Eclipse的"PDE Tools->Convert Projects to Plug-in Projects"可生成Plugin工程需要的文件,注意原来在classpath里对swt.jar的引用应改为manifest.mf文件里对 org.eclipse.ui的依赖。
2、相对路径文件的使用,在SWT里用ClassLoader.getResourceAsStream()等方法引用的文件放在Plugin里会找不到,应改为FileLocator.toFileURL(Platform.getBundle("plugin.id").getEntry("/images")).getFile();或等效的方式。
3、对本地方法需要的静态链接库dll文件的引用,如果SWT程序是在启动参数里指定的,在Plugin里需要修改,可在系统环境变量里加到Path里。
4、SWT程序的入口类一般会被Editor或View等Plugin元素代替,要注意原来在入口类里初始化的变量也要改到Plugin里,特别是静态变量,正确初始化以防止NullPointerException。
5、必要的话,利用JFace等Plugin特性改写原来的SWT对话框、树、表格等元素,可使UI更具Plugin风格。
相关文章推荐
- 修改Eclipse的默认debugKeyStore为带签名的keyStore,方便调试需要验证MD5值的地方
- nfs使用mount -o传递用户名和密码参数需要修改的地方
- Volley通常需要修改源码的地方
- 修改rails项目的名字 需要修改哪些地方
- 移动tomcat之后总共需要修改的三个地方
- OpenGL编程——NeHe教程在VS2012下需要修改的地方
- Anemometer自动审核sql,添加自定义字段,二次开发需要修改的地方
- 从Unity 5.6导出Gradle工程需要修改地方
- 64位ubuntu 12.04安装android eclipse plugin需要注意的地方
- zen cart 模板 站内优化需要修改的几个地方
- 有关lomboz生成的ejb-jar。xml和jboss。xml文件需要修改地方的记录
- hal库配置time需要修改库函数的地方
- phpcms上传到服务器中,需要修改几个地方
- ecshop的弊病和需要修改的地方,持续更新
- java里String需要注意的地方以及基本数据类型注意点(不定期修改更新)
- vue+webpack引入 jquery 需要修改的地方
- SPD开发工作流需要注意的地方1【SPD开发的工作流中如何修改审批状态】
- android : 修改frameworks/base/ 代码需要注意的地方
- 打开别人的AS工程需要手动修改的地方
- 更换内存容量和挂载bank需要修改的地方——Starting kernel ... Uncompressing Linux...的另外一种可能