2012-03-29 11 views
3

Ich arbeite mit der ATG Dynamo-Plattform - eine Java-basierte Plattform, die Manifest-Dateien verwendet, um viele Konfigurationsdetails ihrer Module zu definieren.Gibt es eine Java-API zum Lesen, Interpretieren und Schreiben von Java-Manifestdateien (MANIFEST.MF)?

Ich möchte einige Tools und Skripte - sagen, ANT-Skripte oder Maven-Plugins - um diese Dateien programmgesteuert zu bearbeiten. Insbesondere möchte ich in der Lage sein, vorhandene Dateien zu lesen und einige Aufgaben auf der Grundlage des Inhalts durchzuführen und neue Manifest-Dateien als Teil meines Build-Prozesses auf der anderen Seite zu generieren.

Das Format von MANIFEST.MF scheint sehr einfach zu sein, obwohl es einige Regeln für Zeilenlänge und Leerraum gibt. Ich bin mir sicher, dass ich viel davon manuell programmieren kann. Es wäre jedoch sehr nützlich, wenn es bereits eine API zum Lesen und Schreiben solcher Dateien gemäß der Spezifikation gibt.

Irgendwelche Vorschläge?

+0

atg Manifest-Dateien sind etwas anders als Java-Manifest-Dateien. Hast du etwas in Gang gebracht? Ich habe ähnliche Ziele und würde gerne mit etwas Existieren beginnen –

Antwort

3

Verwenden Sie JarFile#getManifest(). Sie erhalten eine Instanz von Manifest, die verschiedene bequeme Methoden zum Zugriff auf die Attribute bietet.

JarFile jarFile = new JarFile(file); 
Manifest manifest = jarFile.getManifest(); 
// ... 
+0

Perfekt! Es dauerte eine Weile, bis ich erkannte, dass ich JarFile verwenden konnte, selbst wenn mein MANIFEST nicht in einem JAR ist. – Vihung

+0

Korrektur: Ich glaube, ich kann direkt die Klasse Manifest (http://docs.oracle.com/javase/6/docs/api/java/util/jar/Manifest.html#Manifest(java.io.InputStream)) verwenden, ohne JarFile zu verwenden – Vihung

1

Neben der vorherige Antwort, die Sie ein paar Informationen von manifest durch Paket Beispiel bekommen können:

getClass().getPackage().getImplementationTitle(); // for example 
Verwandte Themen