Postavljanje Java verzije u Mavenu
1. Pregled
U ovom brzom vodiču pokazat ćemo kako postavili Java verziju u Mavenu.
Prije nego što krenemo naprijed, možemo provjerite zadanu JDK verziju Mavena. Pokretanje mvn -v naredba će prikazati Java verziju u kojoj Maven radi.
2. Upotrijebite dodatak za kompajler
U dodatku za kompajler možemo odrediti željenu Javinu verziju.
2.1. Dodatak za kompajler
Prva opcija je postavljanje verzije u svojstvima dodatka kompajlera:
1.8 1.8
Prevoditelj Maven prihvaća ovu naredbu s -cilj i -izvor verzije. Ako želimo koristiti jezik Java 8, značajke -izvor treba postaviti na 1.8.
Također, da bi kompilirane klase bile kompatibilne s JVM 1.8, -cilj vrijednost bi trebala biti 1.8.
Zadana vrijednost za obje je 1.6 verzija.
Alternativno, dodatak kompajlera možemo konfigurirati izravno:
maven-compiler-plugin 1.8 1.8
The maven-compiler-plugin također ima dodatna svojstva konfiguracije koja nam omogućuju veću kontrolu nad procesom kompilacije -izvor i -cilj verzije.
2.2 Java 9 i novije verzije
Nadalje, počevši od verzije JDK 9, možemo koristiti novu -objava opcija naredbenog retka. Ovaj novi argument automatski će konfigurirati prevoditelj za stvaranje datoteka klase koje će se povezivati s implementacijom zadane verzije platforme.
Prema zadanim postavkama -izvor i -cilj opcije ne jamče unakrsnu kompilaciju.
To znači da našu aplikaciju ne možemo pokretati na starijim verzijama platforme. Uz to, za kompajliranje i pokretanje programa za starije verzije Jave također moramo navesti -bootclasspath opcija.
Za ispravnu unakrsnu kompilaciju, nova -objava opcija zamjenjuje tri zastavice: -izvor,-cilj i -bootclasspath.
Nakon transformacije naših primjera, za svojstva dodatka možemo deklarirati:
7
I za maven-compiler-plugin počevši od verzije 3.6 možemo napisati:
org.apache.maven.plugins maven-compiler-plugin 3.8.0 7
Kao što primjećujemo, inačicu Java možemo dodati u novu atribut. U ovom primjeru kompajliramo našu aplikaciju za Javu 7.
Čak i više, ne treba nam JDK 7 instaliran u našem stroju. Java 9 već sadrži sve informacije za povezivanje novih jezičnih značajki s JDK 7.
3. Specifikacija proljetnog čizma
Spring Boot aplikacije navode JDK verziju unutar Svojstva oznake u pom.xml datoteka.
Prvo, moramo dodati proljeće-čizma-starter-roditelj kao roditelj našeg projekta:
org.springframework.boot spring-boot-starter-parent
Ovaj nadređeni POM omogućuje nam konfiguriranje zadanih dodataka i više svojstava, uključujući inačicu Java: Prema zadanim postavkama, inačica Java je 1.8.
Međutim, možemo nadjačati zadanu verziju roditelja navodeći java.verzija svojstvo:
1.9
Postavljanjem java.verzija svojstvo izjavljujemo da su izvorna i ciljna Java inačica jednake 1.9.
Iznad svega, trebali bismo imati na umu da je ovo svojstvo Spring Boot Specification. Dodatno, počevši od Spring Boot 2.0, Java 8 je minimalna verzija.
To znači da ne možemo koristiti ili konfigurirati Spring Boot za starije verzije JDK.
4. Zaključak
Ovaj brzi vodič prikazuje moguće načine postavljanja Java verzije u našem projektu Maven.
U sažetku:
- Koristeći moguće je samo s aplikacijom Spring Boot
- Za jednostavne slučajeve maven.compiler.izvor i maven.compiler.cilj svojstva bi trebala najbolje odgovarati
- Konačno, za veću kontrolu nad postupkom kompilacije koristite maven-compiler-plugin postavke konfiguracije