Java techniki programowania



Podobne dokumenty
Java Code Signing UŜycie certyfikatów niekwalifikowanych do podpisywania kodu w technologii Java. wersja 1.2 UNIZETO TECHNOLOGIES SA

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]

Java jako język programowania

Podpisywanie i bezpieczne uruchamianie apletów wg

JAVA I SIECI. MATERIAŁY:

Standard Code Signing. Użycie certyfikatów do podpisywania kodu w technologii Java. wersja 1.3 UNIZETO TECHNOLOGIES SA

Programowanie obiektowe

Język JAVA podstawy. wykład 2, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Java Code Signing Użycie certyfikatów niekwalifikowanych do podpisywania kodu w technologii Java. wersja 1.3 UNIZETO TECHNOLOGIES SA

Kurs programowania. Wykład 7. Wojciech Macyna. 25 kwietnia 2017

Jak się poruszać w świecie Java Plug-inów (JRE)

Bezpieczne uruchamianie apletów wg

Java Code Signing Uycie certyfikatów niekwalifikowanych do podpisywania kodu w technologii Java. wersja 1.1 UNIZETO TECHNOLOGIES SA

Programowanie obiektowe zastosowanie języka Java SE

Wprowadzenie do Java Web Start

Aplikacje internetowe - laboratorium

Instrukcja pobrania i instalacji. certyfikatu Microsoft Code Signing. wersja 1.4

CitiDirect Online Banking - portal CitiDirect EB

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Instrukcja aktywacji i instalacji Certum Code Signing

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Ćwiczenie 1. Przygotowanie środowiska JAVA

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka

Użycie pakietów instalacyjnych.msi w oprogramowaniu WYWIAD Plus

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

WPROWADZENIE DO JĘZYKA JAVA

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Kurs programowania. Wykład 6. Wojciech Macyna. 7 kwietnia 2016

Udostępnianie obrazu z kamer Sanyo HD na stronach WWW PORADNIK

Tworzenie projektu zawierającego aplet w środowisku NetBeans. lab1. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych

Instrukcja generowania certyfikatu PFRON i podpisywania dokumentów aplikacji SODiR w technologii JS/PKCS 12

Java Podstawy. Michał Bereta

Laboratorium 01: Poznanie środowiska programowania w języku Java [2h]

Statistics dla systemu Mac OS. Instrukcje dotyczące instalacji (licencja sieciowa)

Instrukcja aktywacji i instalacji Certum Code Signing

1. Adresy do połączenia: System KSI SIMIK oraz Oracle Discoverer są dostępne pod następującymi adresami:

STATISTICA 8 WERSJA JEDNOSTANOWISKOWA INSTRUKCJA INSTALACJI

Podstawy i języki programowania

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.

Programowanie graficznego interfejsu użytkownika. Wykład 8. Maciej Wołoszyn 10 maja 2006

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika)

STATISTICA 8 WERSJA SIECIOWA CONCURRENT INSTRUKCJA INSTALACJI

Java pierwszy program w Eclipse «Grzegorz Góralski strona własna

Rejestracja w serwisie GTC Siemens Instrukcja instalacji NX dla studentów i pracowników Politechniki Lubelskiej

Przewodnik instalacji i rozpoczynania pracy. Dla DataPage+ 2013

IBM SPSS Statistics dla systemu Linux Instrukcje instalacji (licencja sieciowa)

I. Uruchomić setup i postępować według instrukcji

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja wielokrotna)

Tomasz Greszata - Koszalin

Interaktywne aplety obsługa zdarzeń, uruchamianie apletu przez przeglądarkę lub maszynę wirtualną Javy. Tworzenie łącz w apletach

Instalacja Czytnika Kart GemPc Twin 1.4 dla przeglądarek 32 bitowych dla systemów Windows XP/Vista/2000/7/8 32 bity i 64 bity Wersja 1.

Laboratorium Programowania Kart Elektronicznych

Kancelaria Prawna.WEB - POMOC

Java niezbędnik programisty spotkanie nr 12. Graficzny interfejs użytkownika

Programowanie w Internecie. Podstawy użycia JSP. Paweł Kasprowski. vl06z

Wykład 1: Wprowadzenie do technologii Java

IBM SPSS Statistics - Essentials for R: Instrukcje instalacji dla System Mac OS

*Wersja dla przeglądarki Internet Explorer. Instrukcja instalacji czytnika kart chipowych* dla Windows 7 (Konto korporacyjne) SGBe-kdbs

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

INSTRUKCJA obsługi certyfikatów

Instrukcja obsługi programu altbackup

IBM SPSS Statistics - Essentials for R: Instrukcje instalacji dla Linux

Załącznik 1 instrukcje instalacji

Instrukcja instalacji oprogramowania Systemu e-kt

WPROWADZENIE DO JĘZYKA JAVA

Aktualizacja systemu UPLOOK / STATLOOK

Spis treści Ustawienia zaawansowane: Dotyczy użytkowników, którzy używają proxy... 40

Instrukcja instalacji oprogramowania dla środowiska Windows

Kopiowanie i instalowanie pliku w systemie Windows CE

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox dla urządzeń kryptograficznych.

IBM SPSS Statistics Wersja 23. Mac OS Instrukcja instalacji (licencja autoryzowanego użytkownika)

Instrukcja instalacji czytnika kart mikroprocesorowych i konfiguracji przeglądarki internetowej do współpracy z systemem bankowości elektronicznej CIB

Instrukcja użytkownika Platforma transakcyjna mforex Trader dla systemu Linux

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox

Laboratorium - Poznawanie FTP

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows

Przewodnik instalacji i rozpoczynania pracy. dla DataPage+ 2012

DESlock+ szybki start

Krótka instrukcja instalacji

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane Systemy Decyzyjne. Laboratorium

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski

IBM SPSS Statistics Wersja 22. Windows - Instrukcja instalacji (licencja autoryzowanego użytkownika)

VSFTPd Użycie certyfikatów niekwalifikowanych w oprogramowaniuvsftpd. wersja 1.3 UNIZETO TECHNOLOGIES SA

IBM SPSS Statistics Version 22. Windows - Instrukcja instalacji (licencja wielokrotna)

Przygotowanie środowiska Java do prawidłowej obsługi podpisu elektronicznego w epuap

epuap Dodanie wyjątków do listy witryn zaufanych do instalowania dodatków i uruchamiania apletów Java

Instrukcja obsługi certyfikatów w programie pocztowym MS Outlook Express 5.x/6.x

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Portal SRG BFG. Instrukcja korzystania z Portalu SRG BFG

Instrukcja generowania żądania CSR SOW WERSJA 1.6

Swing Application Framework czyli tam i z powrotem. Copyright Piotr Kochański & Erudis,

BusinessNet - Instrukcja instalacji czytników, kart procesorowych, certyfikatów kwalifikowanych oraz generowania podpisu elektronicznego.

1. Instalacja platformy.net Framework.

Instrukcja instalacji czytników, kart procesorowych, certyfikatów kwalifikowanych oraz generowania podpisu elektronicznego

Osadzenie pliku dźwiękowego na stronie www

Transkrypt:

1 Java techniki programowania Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2005/2006 Michał Cieśla pok. 440a, email: ciesla@if.uj.edu.pl konsultacje: poniedziałki 13-15 http://users.uj.edu.pl/~ciesla/

2 Plan wykładu 1. Rozpowszechnianie programów napisanych w Javie. 2. Narzędzie przydatne w trakcie tworzenia aplikacji (ant, junit, log4j). 3. Java i bazy danych. 4. Bibliotekiprzydatne przy tworzeniu aplikacji komercyjnych. 5. Serializacja i Java Beans. 6. Wybrane elementy wprowadzone w wersji JDK 1.5..

3 Literatura 1. http://java.sun.com/. 2. http://www.apache.org/, http://jakarta.apache.org/. 3. Czasopisma: Software Developer Journal (http://www.sdjournal.org/), Java Developers Journal (http://jdj.sys-con.com/). 4. Inne zasoby internetowe (http://www.jguru.com/).

4 Rozpowszechnianie programów w Javie 1. Format jar - podpisywanie archiwów - narzędzia keytool i jarsigner 2. Applety - uruchamianie dowolnej aplikacji jako applet. 3. Java Web Start - protokół jnlp 4. Tworzenie wersji instalacyjnych - IzPack - IzPack-launcher

5 JAR (The Java Archive Format) Format JAR pozwala umieścić wiele plików w pojedynczym archiwum. Zwykle archiwa JAR zawierają pliki klas wraz z dodatkowymi zasobami potrzebnymi do działania apletu czy aplikacji. Podstawowe zalety dystrybucji programów w postaci plików jar to: bezpieczeństwo: archiwa mogą być cyfrowo podpisywane użytkownicy akceptujący podpis mogą dać aplikacji dodatkowe prawa, które w innym przypadku nie zostałyby udostępnione, kompresja: skrócenie czasu ładowania apletu lub aplikacji, zarządzanie zawartością archiwów z poziomu języka programowania, zarządzanie wersjami na poziomie pakietów oraz archiwów (Package Sealing, Package Versioning), przenośność.

Tworzenie pliku JAR Archiwum jar tworzy sie używając komendy jar, np: jar cf archiwum.jar klasa1.class klasa2.class... Użyte opcje: c tworzenie pliku (create), f zawartość archiwum zostanie zapisana do pliku archiwum.jar zamiast do standardowego wyjscia (stdout); Inne opcje, które mogłyby zostac dodane do cf: v informacje o postępie prac (verbose), 0 (zero) brak kompresji, M domyślny plik manifest nie zostanie dołączony do archiwum m do archiwum zostanie dołączony plik manifest z określonej lokalizacji, np: jar cmf plik_manifest archiwum.jar *, -C zmiana katologu w trakcie działania archiwizatora, np: jar cf ImageAudio.jar -C images * -C audio *. 6

7 Plik MANIFEST W archiwum jar zwykle znajduje się katalog META-INF a w nim plik MANIFEST.MF zawierający dodatkowe informacje o archiwum. Typowa zawartość: Manifest-Version: 1.0 Created-By: 1.5.0-b64 (Sun Microsystems Inc.) Ant-Version: Apache Ant 1.6.5 Main-Class: pl.edu.uj.if.wyklady.java.wyklad01 mówi, że po uruchomieniu archiwum wykonana zostanie metoda main(string[] args) zawarta w klasie Wyklad01 znajdującej się w pakiecie pl.edu.uj.if.wyklady.java. Uruchomienie pliku jar: java -jar archiwum.jar

Przeglądanie zawartości pliku JAR Archiwum jar przegląda się używając opcji t, np: jar tf archiwum.jar Użyte opcje: t przeglądanie pliku (table). Przykład: jar tf dt.jar META-INF/ META-INF/MANIFEST.MF javax/ javax/swing/ javax/swing/abstractbuttonbeaninfo.class javax/swing/beaninfo/ javax/swing/beaninfo/images/ javax/swing/beaninfo/images/abstractbuttoncolor16.gif javax/swing/beaninfo/images/bordercolor16.gif javax/swing/beaninfo/images/boxcolor16.gif... 8

9 Rozpakowanie pliku JAR Archiwum jar można rozpakować za pomocą opcji x, np: jar xf archiwum.jar [plik(i) do rozpakowania] Użyte opcje: x tworzenie pliku (create). Przykład: jar xf dt.jar rozpakuje całe archiwum. jar xf dt.jar javax/swing/abstractbuttonbeaninfo.class rozpakuje plik javax/swing/abstractbuttonbeaninfo.class. UWAGA: podczas rozpakowywania wszystkie istniejące pliki o ścieżkach takich jak pliki rozpakowywane zostaną nadpisane.

10 Aktualizacja pliku JAR Sposoby modyfikacji pliku jar: jar cmf dodatek-do-manifestu archiwum.jar [plik(i) do spakowania] jar uf archiwum.jar [plik(i) do aktualizacji] Użyte opcje: m dopisanie informacji do pliku manifest, u aktualizacja archiwum. Opcje u i m mogą być użyte równocześnie. Przykład: jar xf dt.jar rozpakuje całe archiwum. jar umf info dt.jar javax/swing/abstractbuttonbeaninfo.class aktualizuje w pliku dt.jar manifest zawartością info i plik javax/swing/abstractbuttonbeaninfo.class.

Podpisywanie pliku JAR Cyfrowy podpis to ciąg bitów wyliczony na podstawie podpisywanych danych i prywatnego klucza osoby (instytucji) podpisującej. Podstawowe cechy podpisu cyfrowego: jego autentyczność jest weryfikowana za pomocą klucza publicznego podpisującego, nie może zostać podrobiony (dopóki klucz prywatny jest chroniony), nie może być wykorzystany do podpisu innych danych, ponieważ jest funkcją podpisywanej treści, podpisana treść nie może być zmieniona, w przeciwnym wypadku podpis straci autentyczność. Aby wygenerować podpis należy posiadać parę odpowiadających sobie kluczy: prywatny i publiczny. Dodatkowo potrzebny jest certyfikat potwierdzający autentyczność klucza publicznego. 11

12 Narzędzie keytool keytool służy do zarządzania kluczmi i certyfikatami. Wszystkie klucze są przechowywane w tzw. keystore. Na dysku jest on przechowywany w domyślnym katalogu użytkownika w pliku o nazwie.keystore lub keystore. Aby wygenerować nowy klucz należy użyć opcji genkey: keytool -genkey {-alias alias} {-keyalg keyalg} {-keysize keysize} {-sigalg sigalg} [-dname dname] [-keypass keypass] {-validity valdays} {-storetype storetype} {-keystore keystore} [-storepass storepass] [-provider provider_class_name] {-v} {-Jjavaoption} Więcej informacji: http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/keytool.html

Enter key password for <mckey> (RETURN if same as keystore password): haslomckey 13 Narzędzie keytool C:\jdk1.5.0\bin>keytool -genkey -alias mckey Enter keystore password: haslo0 What is your first and last name? [Unknown]: Michal What is the name of your organizational unit? [Unknown]: Ciesla What is the name of your organization? [Unknown]: IIS UJ What is the name of your City or Locality? [Unknown]: Krakow What is the name of your State or Province? [Unknown]: Malopolska What is the two-letter country code for this unit? [Unknown]: PL Is CN=Michal, OU=Ciesla, O=IIS UJ, L=Krakow, ST=Malopolska, C=PL correct? [no]: yes

14 Narzędzie jarsigner jarsigner jest wykorzystywany do podpisywania plików jar. Aby podpisać plik przyklad.jar za pomocą wygenerowanego wcześniej klucza mckey używamy polecenia: C:\jdk1.5.0\bin>jarsigner przyklad.jar mckey Enter Passphrase for keystore: haslo0 Enter key password for mckey: haslomckey Warning: The signer certificate will expire within six months. Więcej informacji: http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/jarsigner.html

15 Applety Applet pozwala na uruchomienie dowolnego programu w javie za pośrednictwem przeglądarki internetowej. Po wejściu na odpowiednio przygotowaną stronę internetową następuje pobranie wskazanych plików potrzebnych do uruchomienia programu. Pliki potrzebne do uruchomienia programu są automatycznie pobierane po czym następuje uruchomienie wskazanej klasy na lokalnym komputerze. Aplet nie musi wykonywać się w oknie przeglądarki. Jak każdy program w javie moze on otworzyć osobne okienko (okienka) do komunikacji z klientem. Przed uruchomieniem apletu może nastąpić sprawdzenie podpisów cyfrowych.

16 Przykładowy applet package pl.edu.uj.is.java public class ExampleApplet extends javax.swing.japplet { /** Konstruktor. Tworzy instancje apletu */ public ExampleApplet() { getrootpane().putclientproperty( "defeatsystemeventqueuecheck", Boolean.TRUE); } } /** * Metoda wykonywana po uruchomieniu appletu * @see java.applet.applet#init() */ public void init() { ExampleClass.main(null); }

17 Przykładowa strona www <html> <head> <title>strona zawierająca applet</title> </head> <body> <APPLET CODE ="pl.edu.uj.if.exampleapplet.class" WIDTH ="300" HEIGHT ="30"> <PARAM NAME ="ARCHIVE" VALUE ="kat/archiwum1.jar, kat2/lib/biblioteka.jar"> alt="twoja przegladarka obsluguje applety, jednak z nieznanych przyczyn nie potrafi ich uruchomic."> Twoja przegladarka ignoruje applety! </APPLET> </body> </html>

18 Przykładowa strona www Internet Explorer <html> <head> <title>strona zawierająca applet</title> </head> <body> <OBJECT classid = "clsid:cafeefac-0014-0001-0000-abcdeffedcba" codebase = "http://java.sun.com/products/plugin/autodl/jinstall-1_4_1- windows-i586.cab#version=1,4,1,0" WIDTH = 300 HEIGHT = 60> <PARAM NAME ="CODE" VALUE ="pl.edu.uj.if.exampleapplet.class" > <PARAM NAME = "type" VALUE = "application/x-javaapplet;version=1.4.1"> <PARAM NAME = "ARCHIVE" VALUE = "kat/archiwum1.jar, kat2/lib/biblioteka.jar">

19 Przykładowa strona www Internet Explorer <COMMENT> <EMBED type = "application/x-java-applet;version=1.4.1" CODE = "pl.edu.uj.if.exampleapplet.class" WIDTH = 300 HEIGHT = 30 pluginspage = "http://java.sun.com/products/plugin/index.html#download"> <NOEMBED> alt="twoja przegladarka obsluguje applety, jednak z nieznanych przyczyn nie potrafi ich uruchomic." Twoja przegladarka ignoruje applety! </NOEMBED> </EMBED> </COMMENT> </OBJECT> </html>

20 Java Web Start Technologia Java Web Start jest rozwiązaniem dedykowanym do lokalnego uruchamiania programów w Javie umieszczonych w sieci. JWS: jest w pełni niezależna od używanych przeglądarek internetowych, umożliwia automatyczne pobranie właściwej wersji środowiska JRE, pobierane są tylko pliki, które zostały zmienione, obsługuje prawa dostępu do zasobów lokalnego komputera (dysk, sieć, itp.), do opisu zadania do uruchomienia wykorzystuje pliki jnlp (Java Network Launch Protocol). Więcej informacji: http://java.sun.com/products/javawebstart/index.jsp

21 JNLP - przykład <?xml version="1.0" encoding="utf-8"?> <jnlp spec="1.0+" codebase="http://www.serwer.w.sieci.pl/katalog" href="plik_jws.jnlp"> <information> <title>nazwa programu</title> <vendor>producent programu</vendor> <homepage href="http://www.strona.programu.pl"/> <description kind="short">krotki opis programu</description> <icon kind="splash" href="kat/splashscreen.gif"/> <icon href="kat/ikona.gif"/> <offline-allowed/> </information>

22 JNLP - przykład <security> <all-permissions/> </security> <resources> <j2se version="1.4+"/> <jar href="kat/archiwum1.jar"/> <jar href=" kat2/lib/biblioteka.jar"/> </resources> <application-desc mainclass="pl.edu.uj.if.exampleapplet"/> </jnlp> Więcej: http://java.sun.com/j2se/1.4.2/docs/guide/jws/downloadservletguide.html http://java.sun.com/j2se/1.4.2/docs/guide/jws/developersguide/overview.html#requirem Plik jnlp umieszczamy na serwerze www. Często należy skonfigurować odpowiadający mu typ mime: application/x-java-jnlp-file JNLP

23 IzPack Projekt IzPack (http://www.izforge.com/izpack/) służy do tworzenia instalatorów dla programów w Javie. Jego podstawowe cechy: opensource udostępniony na licencji GNU GPL, powszechnie używany, obsługuje wiele wersji językowych (w tym polską), wieloplatformowy (testowany w Win32, MacOS X, Linux/i386, FreeBSD/i386), konfigurowany poprzez dokument XML, tworzy programy odinstalowujące.

24 IzPack - schemat pliki zasoby Instalator jest opisany za pomocą dokumentu XML. Dokument ten opisuje wszelkie zasoby z których korzysta program. Wynikiem jego kompilacji jest archiwum jar zawierające instalator. Do uruchomienia instalatora wymagane jest środowisko JRE. kompilator Dokument XML instalator

IzPack dokument XML Dokument XML opisujący program instalacyjny ma następującą strukture: Program.xml <installation version="1.0"> <info>... </info> <guiprefs...>... </guiprefs> <locale>... </locale> <resources>... </resources> <panels>... </panels> <packs>... </packs> </installation> 25

IzPack dokument XML Sekcja info zawiera podstawowe informacje o programie, takie jak nazwa wersja, autorzy, itp: <info> <appname>myapp</appname> <appversion>1.2.3</appversion> <authors> <author name="snoopy" email="snoopy@myapp.org" /> <author name="foo Bar" email="foo@bar.org" /> </authors> <url>http://www.myapp.org/</url> <javaversion>1.4</javaversion> </info> Sekcja guiprefs określa natomiast wygląd instalatora: <guiprefs height="600" resizable="yes" width="800"> <laf name="metouia"> <os family="unix" /> </laf> </guiprefs> 26

27 IzPack dokument XML Sekcja locale definiuje dostępne wersje językowe instalatora: <locale> <langpack iso3="eng"/> <langpack iso3="fra"/> <langpack iso3="deu"/> <langpack iso3="ita"/> <langpack iso3="jpn"/> <langpack iso3="spa"/> </locale> Sekcja resources pozwala wskazać zasoby wykorzystywane do tworzenia okienek instalatora: <resources> <res src="install-readme.html" id="htmlinfopanel.info"/> <res src="licence.txt" id="licencepanel.licence"/> <res src="langsel.jpg" id="installer.langsel.img"/> </resources>

IzPack dokument XML Instalator bedzie zawierał okienka określone w sekcji panels. <panels> <panel classname="hellopanel"/> <panel classname="htmlinfopanel"/> <panel classname="licencepanel"/> <panel classname="packspanel"/> <panel classname="targetpanel"/> <panel classname="installpanel"/> <panel classname="simplefinishpanel"/> </panels> Sekcja packs określa położenie komponentów programu <packs> <pack name="core" required="yes"> <description>myapp core files.</description> <fileset dir="" targetdir="$install_path"> <include name="*.txt" /> <include name="lib/**/*" /> </fileset> </pack> </packs> 28

29 IzPack kompilacja Aby stworzyć wersje instalacyjną można użyc skryptu compile np: compile install.xml -b. -o install.jar -k standard użyte opcje: -b podstawowa ścieżka tzw. basepath, -o nazwa pliku wynikowego, -k typ instalatora, Uruchomienie instalatora nastąpi po wydaniu polecenia: java -jar install.jar Aby uruchomić program nie posiadając środowiska JRE można zastosować dodatkowo inny program np: izpack-launcher.

30 Podsumowanie Aplikacje w javie można dostarczyć odbiorcy na kilka sposobów. Istnieje możliwość przygotowania klasycznej wersji instalacyjnej jak również uruchomienia programu umieszczonego w sieci internet. U podstaw wszystkich tych rozwiązań znajduje się format archiwów javy - jar.