Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ

Podobné prezentace


Prezentace na téma: "VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ"— Transkript prezentace:

1 VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Zbyněk Šlajchrt Část 1.

2 Software používaný na cvičeních
Apache Maven 2 nástroj pro správu a údržbu softwarových projektů Sun Glassfish v3 aplikační server platforma Java EE 6 Derby DB Relační databáze napsaná v Javě NetBeans (možno i další např. Eclipse, IDEA aj.) vývojové prostředí (IDE)

3 Co je Maven? Nástroj pro správu a údržbu softwarových projektů (napsaný v Javě) Management závislostí Životní cyklus projektu sekvence fází, namátkově compile, test, package, install Generování dokumentace Uskladnění tzv. artefaktů v repositáři artefakt je produkt sestavení projektu, např. jar, war ap.

4 Hlavní životní cyklus projektu
Fáze: process-resources – příprava zdrojových souborů, pre-processing compile – překlad process-test-resources – příprava zdrojových souborů testů test-compile – kompilace testů test – spuštění testů package – zabalení sestaveného projektu, vytvoření artefaktu install – instalace artefaktu na lokálním počítači deploy – instalace artefaktu na podnikovém (společném) počítači

5 Fáze a pluginy Na jednotlivé fáze se "lepí" tzv. pluginy, které vykonávají určitou činnost v rámci fáze životního cyklu. Každý plugin může vykonávat více činností, tzv. cíle (goals). K fázi se vždy váže cíl pluginu. K jedné fázi může být napojeno více cílů různých pluginů. Fáze Plugin:Cíl ... compile compiler:compile ... test surefire:test ...

6 Vedlejší životní cykly projektu
Fáze: pre-clean – akce prováděné před vyčištěním Clean: clean – odstranění pozůstatků z předchozích sestavení post-clean – akce prováděné po vyčištění pre-site – kompilace testů site – spuštění testů Site: post-site – zabalení sestaveného projektu, vytvoření artefaktu site-deploy – instalace artefaktu na lokálním počítači

7 Objektový model projektu (POM)
<project> <dependencies> </dependencies> <build> </build> </project> Všeobecné informace o projektu – název, verze ... Seznam přímých závislostí Konfigurace sestavení – cesty ke zdrojovým kódům, konfigurace pluginů ...

8 POM – všeobecné informace
<project> <groupId>cz.vse.javaee.cviceni</groupId> <artifactId>mySimpleApp</artifactId> <packaging>jar</packaging> <version>1.0</version> <name>mySimpleApp</name> <url> <dependencies> ... </dependencies> <build> </build> </project> Globálně unikátní jméno skupiny (často organizace, firma atp.) Název artefaktu (archivu) Způsob zabalení sestaveného projektu Verze projektu Název projektu. Často odpovídá názvu artefaktu. Stránka projektu

9 POM – seznam závislostí
<project> ... <dependencies> <dependency> <groupId>com.dev.heaven</groupId> <artifactId>nice-gadgets</artifactId> <version>2.1.5</version> <scope>compile</scope> </dependency> </dependencies> <build> </build> </project> Každá závislost je specifikována jedním elementem <dependency> Název skupiny artefaktu Název artefektu, často JARu Verze artefaktu V jakém rozsahu se závislost používá: compile, test, dependent

10 POM – seznam závislostí
<project> ... <build> <resources> <resource> <directory>src/main/java</directory> </resource> </resources> <testResources> <testResource> <directory>src/test/java</directory> </testResource> </testResources> <plugins>...</plugins> </build> </project> Seznam adresářů se zdrojovými kódy Definice jednoho adresáře Seznam adresářů se zdrojovými kódy testů Definice jednoho adresáře s testy Seznam a konfigurace pluginů. Viz další snímek. Pozn.: Uvedené adresáře jsou přednastaveny a nemusí se takto explicitně uvádět.

11 Standardní struktura adresářů
my-project pom.xml src main java <java_package> test java <java_package> target Adresář, kam se ukládají výsledky a mezivýsledky během sestavování projektu.

12 POM – konfigurace pluginů
<project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> <debug>true</debug> </configuration> </plugin> </plugins> </build> </project> Vazba na fázi compile zde není uvedena, neboť je specifikována v popisovači pluginu. Konfigurace pluginu Analogické identifikátory jako u závislostí (verze vynechána) Vlastní konfigurace parametrů pluginu. Pro dokumentaci k parametrům pluginu viz

13 Management závislostí
Centrální repositář Veřejný repositář A Veřejný repositář B Všechny artefakty závislostí uvedených v POM se hledají v dostupných repositářích. Veřejné repositáře A a B se prohledávají pouze jsou-li explicitně uvedeny v POM, nebo v konfiguraci lokální instalace Mavenu. Podnikový repositář Lokální repositář mvn compile Maven

14 Práce s Maven klientem Spuštění životního cyklu až do určení fáze
mvn <fáze> fáze musí patřit do jednoho ze tří životních cyklů možno spustit více cyklů: mvn <fáze1> <fáze2> Spuštění cíle vybraného pluginu mvn <plugin>:<cíl> Zadání parametrů pluginu pomocí Java systémových vlastností (-D) mvn <plugin>:<cíl> -D<parametr>=<hodnota>

15 Příklady mvn clean mvn compile mvn clean package mvn antrun:run
spuštění životního cyklu Clean do fáze clean mvn compile spuštění hlavního životního cyklu do fáze compile mvn clean package spuštění dvou cyklů: Clean a hlavního mvn antrun:run spuštění cíle run pluginu antrun mvn antrun:run –DsomeProperty=123 zadání parametrů při volání cíle pluginu

16 Vygenerování aplikace z příkazové řádky
Spustíme vestavěný plugin archetype a jeho cíl generate mvn archetype:generate - DarchetypeCatalog= type-catalog.xml parametr archetypeCatalog udává URL katalogu šablon projektů Vyberte z nabídky simpleWebApp-archetype (volba 1) Zadejte potřebné údaje vašeho nového projektu

17 Zadání parametrů nového projektu
Group-id název organizace vse.javaee Artifact-uid název aplikace webapp1 Package Hlavní Java balíček aplikace Version počáteční verze

18 Sestavení aplikace Přejděte do adresáře aplikace webapp1
Spusťte příkaz mvn package V adresáři target je uložen WAR archiv aplikace

19 Umístění aplikace na server (deploy)
Spusťte aplikační server Glassfish dávka startserv.bat v adresáři <cesta_instalace_gf>\glassfish\bin Otevřete v prohlížeči administrátorskou konzoli serveru V panelu Applications klikněte na tlačítko Deploy Zadejte cestu k souboru webapp1.war V tabulce s aplikacemi klikněte na Launch

20 Vygenerování aplikace v NetBeans
Postup New Project Vyberte kategorii Maven V seznamu Projects vyberte Project from Archetype Next Přidejte archetyp tlačítkem Add GroupId: cz.vse.javaee Artifact Id: simpleWebApp-archetype Version: 1.0 Repository:

21 Vygenerování aplikace v NetBeans
Postup (pokračování) Vyberte nově vytvořený archetyp Vyplňte parametry projektu Finish Sestavení a spuštění aplikace Sestavení: kontextové menu Clean and Build nad uzlem projektu nebo "kladívko se smetáčkem" na liště Spuštění: kontextové menu Run nad uzlem projektu nebo zelená šipka na liště

22 Domácí úkol Dokončit všechny kroky ze cvičení
Podívat se na následující stránky: started/maven-in-five-minutes.html Maven+2+tutorial ion-to-the-lifecycle.html


Stáhnout ppt "VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ"

Podobné prezentace


Reklamy Google