Izrada Java aplikacije s Gradleom

1. Pregled

Ovaj tutorial pruža praktični vodič o tome kako izgraditi projekt zasnovan na Javi pomoću Gradle-a.

Objasnit ćemo korake ručnog stvaranja strukture projekta, izvođenja početne konfiguracije i dodavanja dodatka Java i ovisnosti JUnit. Zatim ćemo izraditi i pokrenuti aplikaciju.

Na kraju, u posljednjem odjeljku dat ćemo primjer kako to učiniti s Gradle Build Init dodatkom. Neki osnovni uvod mogu se naći i u članku Uvod u Gradle.

2. Struktura Java projekta

Prije nego što ručno kreiramo Java projekt i pripremimo ga za izradu, moramo instalirati Gradle.

Počnimo stvarati mapu projekta pomoću PowerShell konzole s imenom gradle-zaposlenik-aplikacija:

> mkdir gradle-zaposlenik-aplikacija

Nakon toga, idemo do mape projekta i stvorimo podmape:

> mkdir src / main / java / zaposlenik

Rezultirajući izlaz prikazan je:

Imenik: D: \ gradle-worker-app \ src \ main \ java Mode LastWriteTime Length Name ---- ------------- ------ ---- d-- --- 10.4.2020 12:14 zaposlenik

U okviru gornje strukture projekta, kreirajmo dva razreda. Jedno je jednostavno Zaposlenik razred s podacima kao što su ime, adresa e-pošte i godina rođenja:

javni razred Zaposlenik {Ime niza; String emailAddress; int yearOfBirth; }

Druga je glavna App zaposlenika razred koji tiska Zaposlenik podaci:

javna klasa EmployeeApp {public static void main (String [] args) {zaposlenik zaposlenik = novi zaposlenik (); zaposlenik.name = "Ivan"; worker.emailAddress = "[e-pošta zaštićena]"; worker.yearOfBirth = 1978; System.out.println ("Ime:" + ime zaposlenika); System.out.println ("Adresa e-pošte:" + worker.emailAddress); System.out.println ("Godina rođenja:" + worker.yearOfBirth); }}

3. Izgradite Java projekt

Poredgradimo naš Java projekt, mi stvaramo graditi.gradle konfiguracijsku datoteku u korijenskoj mapi projekta.

Sljedeće se nalazi u naredbenom retku PowerShell:

Echo> build.gradle

Preskačemo sljedeći korak vezan uz ulazne parametre:

cmdlet zapis-izlaz na položaju cjevovoda naredbi 1 Opskrbne vrijednosti za sljedeće parametre: InputObject [0]:

Da bi izrada bila uspješna, moramo dodati Dodatak za aplikaciju:

dodaci {id 'aplikacija'}

Zatim primjenjujemo dodatak za aplikacije i dodajte potpuno kvalificirano ime glavne klase:

primijeniti dodatak: 'application' mainClassName = 'zaposlenik.EfficieeApp'

Svaki projekt sastoji se od zadaci. Zadatak predstavlja posao koji gradnja izvodi, poput sastavljanja izvornog koda.

Na primjer, u konfiguracijsku datoteku možemo dodati zadatak koji ispisuje poruku o dovršenoj konfiguraciji projekta:

println 'Ovo se izvršava u fazi konfiguracije' zadatak konfiguriran {println 'Projekt je konfiguriran'}

Obično, gradle graditi je primarni zadatak i onaj koji se najčešće koristi. Ovaj zadatak kompajlira, testira i okuplja kod u JAR datoteku. Izgradnja započinje upisivanjem:

> gradle graditi 

Izvedite gornju naredbu za izlaz:

> Konfiguriranje projekta: Izvršava se u fazi konfiguracije Projekt je konfiguriran IZGRADITI USPJEŠNO za 1s 2 zadaća koja se mogu izvršiti: 2 ažurirana

Da bismo vidjeli rezultate gradnje, pogledajmo mapu gradnje koja sadrži podmape:klase, distribucije, biblioteke i izvještaji. Upisujući Stablo / Ž daje strukturu mape za izgradnju:

├───izgraditi │ ├───razrede │ │ └───java │ │ ├───glavni │ │ │ └─── zaposleni │ │ │ Zaposlenik.razred │ │ │ ZaposlenikApp.klasa │ │ │ │ │ └───test │ │ └───employee │ │ EmployeeAppTest.class │ │ │ ├───distribucije │ │ gradle-worker-app.tar │ │ gradle-employee-app.zip │ ├───libs │ │ gradle-worker-app.jar │ │ │ ├─── izvještaji │ │ └───testovi │ │ └───test │ │ │ index.html │ │ │ │ │ ├───razredi │ │ │ zaposlenik .E EmployeeAppTest.html

Kao što vidite, razreda podmapa sadrži dva sastavljena .razred datoteke koje smo prethodno stvorili. The raspodjele podmapa sadrži arhiviranu verziju paketa aplikacija. I libs čuva jar datoteku naše aplikacije.

Obično, i n izvještaji, postoje datoteke koje se generiraju prilikom pokretanja JUnit testova.

Sada je sve spremno za pokretanje Java projekta tipkanjem gradle trčanje.Rezultat izvršavanja aplikacije na izlazu:

> Konfiguriranje projekta: Ovo se izvršava u fazi konfiguracije Projekt je konfiguriran> Zadatak: pokrenite Ime: John Adresa e-pošte: [zaštićena e-poštom] Godina rođenja: 1978 IZGRADNJA USPJEŠNA za 1s 2 izvršena zadatka: 1 izvršen, 1 ažuriran 

3.1. Izrada pomoću Gradle omotača

Gradle Wrapper je skripta koja poziva na deklariranu verziju Gradlea.

Prvo, definirajmo zadatak omota u graditi.gradle datoteka:

omot zadatka (tip: Omotač) {gradleVersion = '5.3.1'}

Pokrenimo ovaj zadatak koristeći omot gradle iz Power Shella:

> Konfiguriraj projekt: Izvršava se u fazi konfiguracije Projekt je konfiguriran IZGRADI USPJEŠNO za 1s 1 izvršiv zadatak: 1 izvršen

U mapi projekta stvorit će se nekoliko datoteka, uključujući datoteke pod / gradle / omot mjesto:

│ gradlew │ gradlew.bat │ ├───gradle │ └─── omot │ gradle-wrapper.jar │ gradle-wrapper.properties
  • gradlew: skripta ljuske koja se koristi za stvaranje zadataka Gradle na Linuxu
  • gradlew.bat: a .šišmiš skripta koju korisnici Windowsa za stvaranje Gradle zadataka
  • gradle-omot.jar: omot za izvršenje omota naše aplikacije
  • gradle- wrapper.svojstva: datoteka svojstava za konfiguriranje omota

4. Dodajte Java ovisnosti i pokrenite jednostavan test

Prvo, u našoj konfiguracijskoj datoteci moramo postaviti udaljeno spremište odakle preuzimamo tegle ovisnosti. Ta su spremišta najčešće mavenCentral () ili jcenter (). Odaberite drugo:

spremišta {jcenter ()}

S našim stvorenim spremištima možemo odrediti koje ovisnosti ćemo preuzeti. U ovom primjeru dodajemo biblioteku Apache Commons i JUnit. Za provedbu dodajte testImplementacija i testRuntime dijelovi u konfiguraciji ovisnosti.

Gradi se na dodatnom testnom bloku:

ovisnosti {compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.10' testImplementation ('junit: junit: 4.13') testRuntime ('junit: junit: 4.13')} test {useJUnit ()}

Kad je to gotovo, isprobajmo rad JUnit-a na jednostavnom testu. Idite na src mapu i napravite podmape za test:

src> mkdir test / java / zaposlenik

U zadnjoj podmapi, kreirajmo EmployeeAppTest.java:

javna klasa EmployeeAppTest {@Test public void testData () {Employee testEmp = this.getEfficieeTest (); assertEquals (testEmp.name, "John"); assertEquals (testEmp.emailAddress, "[e-pošta zaštićena]"); assertEquals (testEmp.yearOfBirth, 1978); } privatni zaposlenik getEfficieeTest () {zaposleni zaposlenik = novi zaposlenik (); zaposlenik.name = "Ivan"; worker.emailAddress = "[e-pošta zaštićena]"; zaposlenik.yearOfBirth = 1978; povratak zaposlenika; }}

Slično kao i prije, pokrenimo a test čiste gradle iz naredbenog retka i test bi trebao proći bez problema.

5. Inicijalizacija Java projekta pomoću Gradle-a

U ovom ćemo odjeljku objasniti korake za stvaranje i izgradnju Java aplikacije koje smo do sada prošli. Razlika je u tome što ovaj put radimo uz pomoć Gradle Build Init dodatka.

Stvorite novu mapu projekta i dajte joj ime gradle-java-primjer. Zatim se prebacite na onu praznu mapu projekta i pokrenite init skriptu:

> gradle init

Gradle će nas pitati s nekoliko pitanja i ponuditi mogućnosti za izradu projekta. Prvo je pitanje koju vrstu projekta želimo generirati:

Odaberite vrstu projekta koji će se generirati: 1: osnovni 2: cpp-aplikacija 3: cpp-knjižnica 4: groovy-aplikacija 5: groovy-knjižnica 6: java-aplikacija 7: java-knjižnica 8: kotlin-aplikacija 9: kotlin-knjižnica 10: skala-knjižnica Odaberite skriptu gradnje DSL: 1: groovy 2: kotlin Unesite odabir [1..10] 6

Odaberite opciju 6 za vrstu projekta, a zatim prvu opciju (groovy) za skriptu gradnje.

Zatim se pojavljuje popis pitanja:

Odaberite okvir za testiranje: 1: junit 2: testng 3: spock Unesite odabir (zadano: junit) [1..3] 1 Naziv projekta (zadano: gradle-java-primjer): Izvorni paket (zadano: gradle.java.example) : zaposlenik IZGRADITI USPJEŠNO za 57m 45s 2 zadaća za djelovanje: 2 izvršena

Ovdje odabiremo prvu opciju, junit, za testni okvir. Odaberite zadani naziv za naš projekt i upišite "zaposlenik" kao naziv izvornog paketa.

Da biste vidjeli kompletnu strukturu direktorija u / src mape projekata, upišimo Stablo / Ž u Power Shell-u:

├───glavno │ ├───java │ │ └───employee │ │ App.java │ │ │ └───resources └───test ├───java │ └───employee │ AppTest. java │ └─── resursi

Konačno, ako projekt gradimo s gradle trčanje, dobivamo "Pozdrav svijete" na izlazu:

> Zadatak: pokrenite Hello world. IZGRADITI USPJEŠNO u 1s 2 zadaća koja se mogu izvršiti: 1 izvršen, 1 ažuran

6. Zaključak

U ovom smo članku predstavili dva načina za stvaranje i izgradnju Java aplikacije pomoću Gradlea. Činjenica je da smo obavili ručni rad i trebalo je vremena da započnemo sa sastavljanjem i izradom aplikacija iz naredbenog retka. U ovom bismo slučaju trebali obratiti pažnju na uvoz nekih potrebnih paketa i klasa ako aplikacija koristi više knjižnica.

S druge strane, Gradle u tome skripta ima značajke koje generiraju lagani kostur našeg projekta, kao i neke konfiguracijske datoteke povezane s Gradleom.

Izvorni kôd za ovaj članak dostupan je na GitHubu.


$config[zx-auto] not found$config[zx-overlay] not found