eclipse插件怎么打包,亲测能用
2017-11-01 · 百度知道合伙人官方认证企业
打开eclipse插件项目的plugin.xml文件(Plugin manifest editor),在可视编辑器中有一项build,在build页右上角有个Export Deployable plug-ins...
可以使用这个功能打包插件,发布成zip包或指定目录。
如果有第三方jar包,可以放在项目的lib目录下,然后在META-INF/MANIFEST.MF文件里配置
./classes,
lib/commons-beanutils.jar,
lib/commons-codec-1.4.jar,
lib/commons-collections.jar,
...
使用以上工具导出zip文件的时候,记得要选上options--use class files compiled in the workspace。这样导出zip包里的jar文件,class文件是在根目录下。如果不使用“use class...”的选项,通过plugin.xml中build编辑页面配置输出文件跟文件夹的话,class文件会在jar包的“classes(默认是bin)”目录下,这时打包出来的插件安装到eclipse后会报错:
Chosen operation is not currently available
这时看workspace\.metadata\.log文件中的错误,会找不到eclipse插件项目中的类。使用“use class...”选项会解决这个问题,但会导致jar包根目录下多一套第三方jar包(lib目录下已经有一套了),这个时候就要使用排除。最终build.properties文件配置示例如下:
bin.includes = plugin.xml,\
META-INF/,\
.,\
icons/,\
temp/,\
lib/
source.. = lib/
output.. = classes/
jars.compile.order = .
bin.excludes = commons-beanutils.jar,\
commons-codec-1.4.jar,\
commons-collections.jar,\
commons-io-1.4.jar,\
commons-jexl-1.1.jar,\
commons-lang-2.0.jar,\
commons-logging.jar,\
commons-validator.jar,\
velocity-1.4.jar,\
xstream-1.3.1.jar
其中source..的配置默认生成是 src/,如果这样配置在不使用“use class files compiled in the workspace”选项导出的时候会报错,改成存放第三方jar包的lib目录就没有错了。