Il pacchetto org.eclipse.ui.jarpackager fornisce classi di utilità per l'esportazione programmatica dei file in un file Jar. Di seguito è riportato un frammento di codice che illustra l'utilizzo della classe 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) { // An error has occurred while executing the operation } catch (InterruptedException e) { // operation has been canceled. } }
Per creare una sottoclasse specifica del plugin di JarPackageData, viene fornita un'API aggiuntiva. In questo modo, gli altri plugin potranno implementare le proprie procedure guidate di esportazione/importazione Jar e salvare il contenuto dell'oggetto JarPackageData in un file di descrizione Jar corrispondente.
Una volta che JAR è stato descritto da un JarPackageData, può essere scritto in modo programmatico mediante un JarWriter2.