JAR vs WAR
JAR a WAR jsou dva typy archivů souborů. Přesněji řečeno, soubor WAR je také souborem JAR, ale používají se pro různé účely. Soubory JAR jsou jako dobře známé soubory ZIP. Mohly by být použity pro jakoukoli obecnou archivaci, ale nejoblíbenější použití souborů JAR je jejich použití jako kontejnerů pro soubory třídy Java a zdrojové soubory, které tvoří aplikaci Java. Soubory WAR se používají speciálně pro nasazení webových aplikací.
Co je JAR?
JAR (Java ARchive) je archiv souborů, který obsahuje mnoho dalších souborů. Soubory JAR obvykle používají vývojáři Java k distribuci aplikací Java nebo knihoven Java pomocí souborů JAR jako kontejnerů pro soubory třídy Java a odpovídající zdrojové soubory (tj. E. text, zvuk, video atd.). Dobře známý formát archivace souborů ZIP je základem, na kterém je soubor JAR postaven. Uživatelé mohou k extrahování obsahu souborů JAR použít buď příkaz jar z JDK (Java Development Kit), nebo běžný software ZIP. Soubory JAR představují velmi pohodlný způsob stahování celé webové aplikace v jediném souboru, aniž byste museli stahovat všechny soubory, které tvoří webovou aplikaci, samostatně. Aby bylo možné číst/zapisovat soubory JAR, vývojáři Javy používají třídy obsažené v balíčku java.util.zip. Pokud má být soubor JAR spuštěn jako samostatná aplikace, pak bude jedna z tříd uvedena jako „hlavní“třída v položkách souboru manifestu. Spustitelné soubory JAR lze spouštět pomocí příkazu java s atributem jar (tj. java -jar foo.jar).
Co je VÁLKA?
WAR (Web Application Archive) je soubor JAR používaný jako kontejner pro skupinu zdrojových souborů webových aplikací (které tvoří webovou aplikaci), jako jsou JSP (Java Server Pages), servlety, soubory tříd, XML soubory a webové (HTML) stránky. Soubory WAR jsou identifikovány podle přípony souboru.war. Byly vyvinuty společností Sun Microsystems (původní vývojáři programovacího jazyka Java). Digitální podpisy používané na souborech JAR (pro svěření kódu) lze použít i na soubory WAR.
Soubor WAR je vnitřně uspořádán do hierarchie speciálních adresářů. Struktura webové aplikace obsažená v souboru WAR je definována v souboru web.xml (který se nachází v adresáři /WEB-INF). Web.xml také popisuje, která adresa URL je spojena s kterým servletem. Definují také proměnné, které jsou přístupné uvnitř servletu, a závislosti, které je třeba nastavit. Pokud však soubor WAR obsahuje pouze soubory JSP, je soubor web.xml volitelný.
Jaký je rozdíl mezi JAR a WAR?
Soubory JAR mají příponu.jar, zatímco soubory WAR mají příponu.war. Soubor WAR je však specifickým typem souboru JAR. Soubory JAR obsahují soubory tříd, knihovny, prostředky a soubory vlastností. Soubory WAR obsahují servlety, stránky JSP, stránky HTML, kódování JavaScript. Soubory JAR se používají k archivaci celé Java (desktopové) aplikace, zatímco soubory WAR se používají k nasazení webových aplikací.