Scrittura programmatica in un file Jar

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.