A JAR fájl olyan ZIP fájlformátumú fájl, amely java osztályokat és hozzájuk tartozó metaadatokat tartalmaz.
JAR fájlokat készíteni a JDK részét képező „jar” eszközzel lehet. Mivel ZIP fájlokról van szó, más zippelő eszköz is használható, de például a WinZip kerülendő, mert a nagybetűs könyvtár- és fájlneveket átnevezi kisbetűsre.
A JAR fájl tartalmazhat egy úgynevezett manifest fájlt a META-INF/ könyvtárban MANIFEST.MF néven. Ez a fájl írja le a futtató környezet számára, miképp kell a jar fájlt használni. Szerepelhet benne például egy bejegyzés arról, hogy a jar fájl futtatásakor melyik osztály melyik statikus metódusát kell elindítani: Main-Class: myPrograms.MyClass Az ilyen jar fájlokat jellemzően így indítják: java -jar valami.jar A manifest fájl tartalmazhat classpath bejegyzést is, ami azt mondja meg, hogy a virtuális gép mely jarokat töltse még be: Class-Path: /lib/jxta.jar /lib/bcprov-jdk14.jar A jar fájl tartalmazhat digitális aláírást is, ami szintén a manifest fájlban tárolódik.
Végrehajtható JAR fájlok
Végrehajtható Java program becsomagolható JAR fájlba, az összes általa használt könyvtárával együtt. A végrehajtható JAR fájlok könnyen megkülönböztethetők az JAR fájlba csomagolt fájlok közül az első fájlban lévő extra mező segítségével, mely hexadecimálisan a 0xCAFE bájt sorozat.
Továbbá a manifest fájlban meg kell határozni a fő osztály nevét, egy ilyen bejegyzéssel: Main-Class: myPrograms.MyClass. Sok operációs rendszerben beleértve a Microsoft Windows-t, Solaris-t és a legtöbb Linux terjesztést, ezeket a JAR fájlokat úgy kezelik, mint más végrehajtható fájlokat. Azonban minden körülmények között a felhasználó használhatja a következőhöz hasonló parancsot is: "java -jar foo.jar".
Azon Microsoft Windows felhasználók számára, akik jobban kedvelik a Windows EXE fájlokat, rendelkezésre állnak olyan eszközök, mint pl. a JSmooth, Launch4J, WinRun4J vagy a Nullsoft Scriptable Install System, melyek segítségével a JAR fájlok becsomagolhatók végrehajtható fájlokba.
Apache Ant Zip/JAR támogatás Az Apache Ant build eszköznek van saját csomagja a Zip és JAR archív fájlok írására és olvasására, ami még a Unix fájlrendszer kiterjesztéseit is támogatja. Az org.apache.tools.zip csomagot Apache Software Foundation licenc alatt adták ki, és úgy tervezték meg, hogy az Ant-on kívül használható legyen.
Kapcsolódó formátumok Több kapcsolódó formátum is épül a JAR formátumra:
WAR (Web Application aRchive) fájlok olyan ZIP fájlok, amelyek XML fájlokat, lefordított java osztályokat, JSP fájlokat és egyéb webalkalmazás objektumokat tartalmaznak. EAR (Enterprise ARchive) fájlok XML fájlokat, lefordított java osztályokat és egyéb üzleti alkalmazás objektumokat tartalmaznak. RAR (Resource Adapter aRchive) fájlok (nem összekeverendő a RAR formátummal), szintén Java archive állományok, tartalmazhatnak XML fájlokat, Java class-okat és más objektumokat a JCA alkalmazások számára. SAR - a (Service ARchive) fájlok hasonlóak az EAR-hoz. Biztosítanak egy service.xml fájlt és a hozzá tartozó JAR fájlokat. APK (Android Application PacKage) szintén egy Java archív formátum fajta, Android alkalmazások használják.Android Developer's Guide
Jegyzetek
Források
Kategória:Fájlformátumok Kategória:Tömörítés Kategória:Java