如何以编程方式使用我的JAR导出其他.class文件

时间:2012-02-15 07:48:25

标签: jar eclipse-plugin .class-file

我需要.class文件(与项目中的源文件无关)位于项目内的一个文件夹中,也可以用JAR导出。 如果我使用“可部署的插件和片段”导出我的项目并指定我需要在 build.properties 文件中导出的元素,它确实导出了我需要的所有内容。 我想以编程方式做同样的事。

使用

创建JAR文件时
final JarPackageData jarPackage = jarCreator.create(project, jarLocation);

在创建功能中我设置了像

这样的选项
jarPackage.setJarLocation(jarLocation);
jarPackage.setExportClassFiles(true);
jarPackage.setManifestLocation(manifestFile.getFullPath());
jarPackage.setIncludeDirectoryEntries(true);
jarPackage.setExportWarnings(true);
jarPackage.setGenerateManifest(false);
jarPackage.setOverwrite(true);
jarPackage.setElements(elementsToExport.toArray());

我确实检查了我需要的所有文件是否在列表中 elementsToExport

final IJarExportRunnable jarExport = jarPackage.createJarExportRunnable(owner.getShell());

try{
   owner.getContainer().run(true, true, jarExport);
}

结果是:

  1. 它会将所选文件夹导出到导出的JAR文件
  2. 它会导出位于此文件夹中的文本文件(例如)。
  3. 但它不会导出位于此文件夹中的.class文件。
  4. 请告诉我,如果您有任何胶水如何配置JarPackageData以便能够导出所选文件夹中的内容!

1 个答案:

答案 0 :(得分:0)

我不确定您使用的特定构建系统,但Jar文件是zip存档,因此如果您确实需要,可以打开它们并自行插入额外的文件。更好的是,写一个脚本来做到这一点。