Pakiet org.eclipse.ui.jarpackager udostępnia klasy narzędziowe służące do programowego eksportowania plików do pliku JAR. Poniższy fragment kodu ilustruje schemat użycia klasy JarPackageData:
void createJar(IType mainType, IFile[] filestoExport) {
Shell parentShell= ...;
JarPackageData description= new JarPackageData();
IPath location= new Path("C:/tmp/myjar.jar");
description.setJarLocation(location);
description.setSaveManifest(true);
description.setManifestMainClass(mainType);
description.setElements(filestoExport);
IJarExportRunnable runnable= description.createJarExportRunnable(parentShell);
try {
new ProgressMonitorDialog(parentShell).run(true,true, runnable);
} catch (InvocationTargetException e) {
// Wystąpił błąd podczas wykonywania operacji
} catch (InterruptedException e) {
// Operacja została anulowana
}
}
Udostępniany jest dodatkowy interfejs API służący do tworzenia specyficznej dla modułu dodatkowego podklasy klasy JarPackageData. Umożliwia to innym modułom dodatkowym implementowanie własnych kreatorów eksportu/importu plików JAR i zapisywanie treści obiektu JarPackageData w odpowiednim pliku opisu JAR.
Po opisaniu pliku JAR przez obiekt JarPackageData może on zostać programowo zapisany za pomocą obiektu JarWriter2.