JAR arhiva

 

Java Archive (JAR) je format koji vam omogućava da objedinite različite fajlove u jedan. Koristi se prilikom isporučivanja aplikacija. JAR fajl neke aplikacije će sadržati sve njene klasne fajlove, kao i audio fajlove, slike i dr.

 

JAR format ime nekoliko prednosti:

-         sigurnost – omogućeno vam je digitalno potpisivanje sadržaja JAR fajla

-         smanjeno vreme preuzimanja – ukoliko korisnik preuzima aplikaciju preko interneta, objedinjavanje svih fajlova u jedan omogućava samo jednu HTTP transakciju prilikom preuzimanja, što znatno smanjuje vreme

-         kompresija podataka – JAR format omogućava kompresiju podataka radi efikasnijeg čuvanja

-         prenosivost – mehanizam za rukovanje JAR fajlovima je standardni deo core API klasa Java platforme

-         konzistentnost – JAR format omogućava da "zapečatite" paket klasa unutar njega, tj. sve klase tog paketa moraju da budu sadržane u istom JAR fajlu

 

U okviru JAR fajla se nalazi i poseban tekstualni fajl koji se naziva manifest. On može da sadrži dodatne informacije o fajlovima koji se nalaze u JAR fajlu, glavnoj klasi aplikacije, verziji programa, zapečaćenim paketima i dr. Podrazumevani manifest se automatski dodeljuje JAR arhivi prilikom njenog kreiranja i njegova putanja je uvek META-INF/MANIFEST.MF.

 

 

Java Web Start

 

Java Web Start omogućava lansiranje aplikacije pomoću jednog klika mišem. Korisnik može da preuzme i pokrene čitavu aplikaciju (na primer, program za chat), bez prolaženja kroz proces instalacije. Potrebno je samo da klikne na odgovarajući link. Ovaj link ukazuje na JNLP fajl, koji daje instrukciju za učitavanje Java Web Start-a i izvršavanje aplikacije.

Ovakovo isporučivanje programa ima nekoliko prednosti:

-         nezavisnost od platformi – Java Web Start omogućuje da aplikacija može da se izvrši na bilo kojoj platformi

-         nezavisnost od verzije Java platforme – različite aplikacije mogu da koriste određenu verziju Java platforme, obzirom da Java Web Start automatski učitava i instalira verziju koja odgovara potrebama aplikacije i korisničkom okruženju

-         efikasnost – aplikacije lansirane pomoću Java Web Start-a se keširaju lokalno, zbog povećanja performansi.

-         nezavisnost od browser-a – jednom učitanu aplikaciju korisnik može da pokrene i bez upotrebe browser-a (pomoću desktop prečice), čak i kada nije konektovan

 

U verzijama Jave počevši od 1.4.2, Java Web Start je integrisan u Java Runtime Envoirment, pa ga nije potrebno posebno instalirati.

 

Isporučivanje aplikacije pomoću Java Web Start-a se odvija u četiri koraka:

-         konfigurisanje web servera (neophodno je da podržava .jnlp fajlove)

-         kreiranje JNLP fajla (XML fajl koji sadrži elemente i atribute koji daju instrukcije Javi kako da pokrene aplikaciju)

-         postavljanje aplikacije na server (aplikaciju zapakovanu u .jar fajl, kao i .jnlp fajl neophodno je postaviti na server)

-         kreiranje web strane (web strana treba da sadrži link koji ukazuje na odgovarajući .jnlp fajl)

 

Sledi jedan primer .jnlp fajla.

 

<?xml version="1.0" encoding="utf-8"?>
<!-- JNLP fajl za aplikaciju "Moja Aplikacija" -->
 
<jnlp spec="1.0+" codebase="http://www.barn.edu.yu/primeri/" href="MojaAplikacija.jnlp">
         <information>
                   <title>Demonstracija Java Web Starta</title>
                   <vendor>BARN</vendor>
                   <description> Demonstracija Java Web Starta </description>
                   <homepage href="http://www.barn.edu.yu"/>
                   <offline-allowed/>
         </information>
         <resources> 
                  <jar href="MojaAplikacija.jar"/> 
                  <j2se version="1.3+"
                  href="http://java.sun.com/products/autodl/j2se"/>
         </resources>
         <application-desc main-class="Pocetna"/>
</jnlp>
 
 
Java Plug-in
 
Java Plug-In proširuje funkcionalnost web browser-a, omogućavajući apletima ili Java Beans-ima da se izvršavaju 
unutar Java 2 Runtime Envoirment (J2RE) umesto unutar Java okruženja koje je ugrađeno u browser. Java Plug-in je
deo J2RE, pa nije neophodno njegovo instaliranje na računarima na kojima je J2RE već instalirana.
Java Plug-in se automatski učitava od strane browser-a, ukoliko je instaliran na sistemu, kako bi pokrenuo aplet.
 
 
Problemi prilikom isporučivanja programa
 
Problemi koji se javljaju u vezi sa isporučivanjem aplikacija i apleta uglavnom nastaju zbog toga što se unutar JAR 
fajla ne nalaze sve potrebne klase i fajlovi. Znog toga treba biti veom pažljiv prilikom kreiranja JAR fajla.
 
Takođe treba imati na umu da li se program oslanja na JDK 1.1.x ili na Java 2 (JDK 1.2 i kasnije verzije). Ukoliko 
kreirate aplet, ovo može da bude od velikog značaja, obzirom da browser-i koji podržavaju starije verzije Jave ne
mogu da podrže aplete koji koriste klase nastale kasnije, kao što je npr. Swing. Takođe, ovi browser-i nemaju
podršku za JAR fajlove, pa umesto njih treba koristiti ZIP arhive.
 
Ukoliko program koristi komponente koje se oslanjaju na biblioteke klasa koje nisu uključene u JDK, neophodno je 
da ih isporučite zajedno sa aplikacijom. Ukoliko koristite JBuilder-ov Archive Builder, ove klase možete da uključite
odabirom opcije Include Required Classes And All Resources u koraku 4. Archive Builder nikad ne uključuje JDK u arhivu,
tj. predpostavlja se da su JDK klase već instalirane na korisnikovom računaru. Ukoliko nisu, neophodno je da
korisnika snabdete ovim klasama, obično pomoću isporučivanja i odgovarajuće verzije JRE zajedno sa aplikacijom.
 
 
JBuilder-ov Archive Builder
 
Archive Builder (AB) je alat koji ubrzava proces kreiranja arhive i propratnih fajlova neophodnih za isporučivanje Java 
programa. On pretražuje klase i resurse unutar projekta neophodne za pravilno funkcionisanje programa i daje vam
mogućnost da podešavate sadržaj JAR arhive pre nego što se ona kreira sa odgovarajućim manifest fajlom.
Pre
pokretanja AB-a neophodno je da kompajlirate ceo projekat (desni klik na ceo projekat u oknu projekta – Rebuild).

Nakon toga pokrenite AB (WizardsArchive Builder).
 
Korak 1 – Select an archive type
Prvi korak AB-a vam pruža mogućnost da odaberete koji tip arhive želite da kreirate: Applet JAR, Applet ZIP, 
Application
, Executable JAR, Native Executable i dr. U zavisnosti od toga koju opciju izaberete, različite opcije će vam
kasnije biti na raspolaganju u okviru ovog alata. Za potrebe ovog kursa, predpostavićemo da je odabran tip Native
Executable.
 
Korak 2 - Specify the file to be created by the archiving process
U okviru ovog koraka podešavate ime samog procesa arhiviranja koji će biti pridružen projektu, kao i ime samog 
.jar fajla. Ovde se nalaze i dve opcije:
 
- Compress The Contents Of The Archive – ukoliko je uključite, sama arhiva će biti manja, ali će vreme učitavanja biti 
veće. Ova opcija se obično uključuje za aplete, a isključuje za aplikacije
- Always Create Archive When Building The Project – ova opcija određuje koliko često će arhiva biti kreirana. Kada je 
uključena, arhiva se ponovo kreira svaki put prilikom kompajliranja projekta
 
Korak 3 - Specify the archive contents
Ovaj korak vam omogućava da odaberete koji deo projekta će biti uključen u arhivu. Podrazumeva se da ćete 
ubaciti sve iz jednog projekta, ali možete da odaberete samo pojedine pakete, klase, fajlove ili resurse.
Odabirom opcije Include dependency classes ubacujete zavisne klase u arhivu.
 
Korak 4 - Determine what to do with library dependencies
Ovde određujete kako će biti ispručivane pojedine biblioteke klasa korišćenje u programu. Biblioteke će biti izlistane 
i za svaku od njih možete da koristite posebnu strategiju:
-         Never Include Any Classes Or Resources
-         Include Required Classes And Known Resources
-         Include Required Classes And All Resources
-         Always Include All Classes And Resources
 
Opcija Include Required Classes And All Resources je dobar izbor za isporučivanje biblioteka.
 
Korak 5 - Set archive manifest options
U ovom koraku birate kako će manifest fajl biti kreiran. Obično je dovoljno samo prihvatiti opciju Create A Manifest i 
uključiti opciju Include A Manifest In The Archive.
 
 
Korak 6 - Select a method for determining the application's main class
Ovaj korak vam omogućava da postavite glavnu klasu aplikacije. To je klasa koja pokreće celu aplikaciju i koja 
sadrži metod main(). Na raspolaganju su vam dve opcije:
 
-         Determine Main Class From Runtime Configurations – odaberite ovu opciju ukoliko želite da napravite izvršni fajl 
na osnovu neke od već kreiranih izvršnih konfiguracija projekta (tu konfiguraciju izaberite iz padajuće liste)
-         Use The Class Specified Below – odaberite ovu opciiju da tačno navedete ime klase koja će biti početna
 
Korak 7 - Determine which executable files to build
Kada odaberete Native Executable tip arhive, AB će automatski da odgovarajuću JAR arhivu ugradi u izvršni fajl tipa 
.exe, pomoću koga će se aplikacija pokretati. Ovaj fajl je zavistan od platforme na kojoj će se program izvšavati. U
okviru ovog koraka možete da odaberete za koje platforme će biti kreirani izvršni fajlovi.
 
Korak 8 - Setting runtime configuration options 
U ovom koraku obično nećete želeti ništa da menjate. Jednostavno prihvatite opciju Create Executable Configuration.
 
 

Kada prođete svih 8 koraka AB-a, praktično ste samo podesili parametre pomoću kojih će arhiva biti kreirana. Arhiva će se pojaviti unutar okna projekta. Da bi ste je zaista i kreirali, kompajlirajte ponovo projekat.

Dodaj komentar Sviđa mi se - (0) Ne sviđa mi se - (0)    

  • JAR arhive i deployment 1
  • JAR arhive i deployment 2
  • JAR arhive i deployment 3