JavaRush /Blog Jawa /Random-JV /Part 4: dhasar Maven

Part 4: dhasar Maven

Diterbitake ing grup
Materi iki minangka bagéan saka seri "Introduction to Enterprise Development". Artikel sadurunge: Bagean 4. Dasar Maven - 1Maven minangka alat kanggo ngatur lan mbangun proyek - asisten nyata kanggo programmer Java. Iku ndadekake urip luwih gampang kanggo pangembang ing kabeh orane tumrap sekolah saka karya: saka nggawe struktur project lan nyambungake perpustakaan perlu kanggo deploying produk ing server. Nalika nggarap kerangka apa wae, sampeyan kudu nggunakake Maven. Dadi ayo goleki fungsi utama saiki lan deleng kepiye cara digunakake.

Langkah demi langkah instalasi Maven

  1. Pisanan sampeyan kudu nginstal Maven kanthi ndownload saka link iki .

  2. Sabanjure, sampeyan kudu mbongkar arsip sing diundhuh lan nyetel variabel lingkungan M2_HOME menyang link menyang lokasi arsip sing ora dibungkus. Contone, C:\Program Files\maven\

  3. Kanggo mriksa manawa kabeh wis diinstal, tulisake ing baris perintah:

    mvn-versi

  4. Yen informasi versi kanggo Maven, Java, etc. ditampilake, sampeyan siyap kanggo pindhah.

  5. Saiki bukak IntelliJIDEA lan gawe proyek anyar. Ing jendhela pisanan, pilih Maven:

    Bagean 4. Dasar Maven - 2
  6. Klik Sabanjure lan isi kothak dialog ing ngisor iki:

    Bagean 4. Dasar Maven - 3
  7. Sabanjure, nggawe proyek ing lokasi sing dibutuhake minangka standar.

    Sawise proyek wis digawe, mbayar manungsa waé kanggo struktur:

    Bagean 4. Dasar Maven - 4
Iki minangka struktur standar kanggo proyek Maven :
  • folder src/main/java ngandhut kelas java;
  • ing src/main/resources - sumber daya sing digunakake aplikasi kita (kaca HTML, gambar, lembar gaya, lsp);
  • src/test - kanggo tes.
Uga mbayar manungsa waé menyang file disebut pom.xml . Iki minangka file utama kanggo ngatur Maven . Katrangan proyek kabeh ana ing kene. Ora ana informasi sing akeh banget, nanging saiki bakal ditambahake.

Manajemen katergantungan ing Maven

Sampeyan bisa uga wis nemokake tembung "manajer dependensi" utawa "manajer dependensi". Maven bisa nindakake kabeh. Thanks kanggo Maven, sampeyan ora perlu nglampahi akeh wektu kanggo nggoleki perpustakaan sing dibutuhake ing Internet, ndownload, banjur nyambungake menyang proyek kasebut: mung nambahake sing dibutuhake menyang dhaptar dependensi Maven. Ketergantungan ditulis ing simpul XML dependensi, umpamane sampeyan butuh perpustakaan Apache Commons IO ing proyek sampeyan kanggo nggarap file sing disederhanakake. Kanggo nambah perpustakaan, tulis limang baris ing pom.xml:
<dependency>
   <groupId>commons-io</groupId>
   <artifactId>commons-io</artifactId>
   <version>2.6</version>
</dependency>
Pom.xml sampeyan saiki kudu katon kaya iki:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>

   <groupId>example.com</groupId>
   <artifactId>example</artifactId>
   <version>1.0-SNAPSHOT</version>

   <dependencies>
       <dependency>
           <groupId>commons-io</groupId>
           <artifactId>commons-io</artifactId>
           <version>2.6</version>
       </dependency>
   </dependencies>
</project>
Sawise iki, ngidini IntelliJ IDEA ngimpor dependensi (kotak dialog kudu katon ing pojok tengen ngisor). Saiki perpustakaan wis siyap digunakake:
import org.apache.commons.io.FileUtils;

import java.io.File;

public class TestMaven {
   public static void main(String[] args) {
       File tempDirectory = FileUtils.getTempDirectory();
   }
}
Kabeh dependensi sabanjure uga kudu ditulis ing tag <dependencies>. Sampeyan bisa uga mikir: kepiye sampeyan ngerti informasi apa sing kudu kalebu babagan perpustakaan ing tag <dependency>? Kabeh iku prasaja ing kene. Ing kasus kaya mengkono, telung paramèter tansah ditemtokake: groupId, artifactId lan versi. Sampeyan bisa ngerteni paramèter kasebut kanthi rong cara:
  1. Ing situs web perpustakaan. Yen kita butuh Apache Commons IO, bukak situs web resmi banjur pilih tab Informasi Ketergantungan. Kabeh informasi sing dibutuhake ana ing kene - sampeyan mung bisa nyalin lan nambah menyang bagean dependensi.

  2. Ing repositori Maven . Ketik "apache commons io" ing telusuran lan sampeyan bakal weruh kabeh versi perpustakaan sing kasedhiya. Sawise milih sing dibutuhake, mung nyalin:

    <dependency>
               <groupId>commons-io</groupId>
               <artifactId>commons-io</artifactId>
               <version>2.6</version>
           </dependency>

    lan tambahake menyang pom.xml sampeyan.

Jinis repositori Maven

Sampeyan kudu nyebutake maneh repositori Maven, amarga kita duwe loro - eksternal (global) lan lokal, ing komputer sampeyan. Kabeh perpustakaan sing ditambahake menyang proyek sampeyan disimpen ing gudang lokal. Nalika Maven nambahake katergantungan sing dibutuhake kanggo proyek, mula mriksa gudang lokal kanggo ana perpustakaan kasebut, lan mung yen ora ana, mula dadi eksternal. Nalika sampeyan bisa ndeleng, sampeyan bisa nggunakake Maven kanggo nambah dependensi, nanging ora kabeh iku bisa nindakake.

Nggawe Proyek Jawa Nggunakake Maven

Fitur iki bisa uga ora ana gunane kanggo wong anyar. Apa iki perlu yen ana IDE? Nanging ora! Kaping pisanan, server sing sampeyan kudu nggawe aplikasi kasebut bisa uga ora mung duwe lingkungan pangembangan, nanging uga antarmuka grafis. Kapindho, ing proyek gedhe, Maven luwih apik ngatasi tugas-tugas ngumpulake proyek kasebut. Mula, aja nyiksa awake dhewe karo ngenteni, nanging nimbang proses nggawe aplikasi nggunakake Maven.

fase

Proses mbangun aplikasi diarani siklus urip proyek Maven, lan kasusun saka fase. Sampeyan bisa ndeleng ing IDEA kanthi ngeklik Maven> conto> Lifecycle ing pojok tengen ndhuwur: Bagean 4. Dasar Maven - 5Nalika sampeyan bisa ndeleng, ana 9 fase:
  1. resik - mbusak kabeh file sing dikompilasi saka direktori target (panggonan disimpen artefak rampung);
  2. validasi - mriksa apa kabeh informasi kasedhiya kanggo mbangun proyek;
  3. kompilasi - file kanthi kode sumber dikompilasi;
  4. test - tes diluncurake;
  5. paket - file sing dikompilasi di rangkep (menyang jar, arsip perang, lsp);
  6. verifikasi - mriksa ditindakake kanggo ngonfirmasi kesiapan file sing dikemas;
  7. nginstal - paket diselehake ing repositori lokal. Saiki bisa digunakake dening proyek liyane minangka perpustakaan eksternal;
  8. situs - dokumentasi proyek digawe;
  9. deploy - arsip sing diklumpukake disalin menyang repositori remot.
Kabeh fase dieksekusi kanthi urutan: sampeyan ora bisa miwiti, ucapake, fase kaping papat nganti fase 1-3 rampung. Ana rong cara kanggo miwiti fase:
  • liwat baris perintah:

    paket mvn

    Bagean 4. Dasar Maven - 6
  • nggunakake Intellij IDEA:

    Bagean 4. Dasar Maven - 7

    Sadurunge paket diluncurake, fase validasi, kompilasi, lan tes ditindakake. Pangecualian yaiku fase resik. Disaranake nelpon sadurunge saben proyek anyar dibangun. Fase bisa didhaptar kanthi dipisahake kanthi spasi:

    mvn paket resik.

Uga, saben fase duwe pra- lan pasca-fase: contone, pre-deploy, post-deploy, pre-clean, post-clean, nanging digunakake arang banget. Kajaba iku, saben fase duwe tujuan. Tujuan standar kalebu standar, tambahan ditambahake dening plugin Maven. Kadhangkala sajrone sawetara tahap sampeyan kudu nindakake fungsi tambahan. Ana plugin Maven kanggo iki. Dhaptar plugin resmi bisa ditemokake ing situs web Maven . Nanging ngerti yen isih ana akeh plugin khusus sing bisa ditemokake ing sumber daya pihak katelu. Mesthi wae, yen ana kabutuhan eksotis, sampeyan mesthi duwe kesempatan kanggo nulis plugin kasebut dhewe .

Plugins

Kanggo nambah plugin Maven menyang proyek, katrangane, padha karo dependensi, kudu diselehake ing pom.xml ing tag <build> lan <plugins>. Contone, kita butuh plugin kanggo mriksa manawa kabeh perpustakaan eksternal nggunakake versi paling anyar. Sawise nggoleki sethithik ing Internet, sampeyan bisa nemokake plugin iki kanthi pandhuan kanggo nggunakake. Ayo nyetel groupId, artifactId lan versi. Ayo nulis gol apa sing kudu ditindakake lan ing tahap apa. Ing kasus kita, mriksa dependensi ing pom.xml saiki disetel menyang fase validasi. Saiki "memori" kita katon kaya iki:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>

   <groupId>example.com</groupId>
   <artifactId>example</artifactId>
   <version>1.0-SNAPSHOT</version>

   <build>
       <plugins>
           <plugin>
               <groupId>com.soebes.maven.plugins</groupId>
               <artifactId>uptodate-maven-plugin</artifactId>
               <version>0.2.0</version>
               <executions>
                   <execution>
                       <goals>
                           <goal>dependency</goal>
                       </goals>
                       <phase>validate</phase>
                   </execution>
               </executions>
           </plugin>
       </plugins>
   </build>

   <dependencies>
       <dependency>
           <groupId>commons-io</groupId>
           <artifactId>commons-io</artifactId>
           <version>2.6</version>
       </dependency>
   </dependencies>
</project>
Kita isih bisa terus nggarap proyek kita. Nanging ayo nyoba ngganti versi Apache Commons IO dadi 2.0 lan miwiti mbangun proyek kasebut. Kita entuk: [ERROR] Failed to execute goal com.soebes.maven.plugins:uptodate-maven-plugin:0.2.0:dependency (default) on project example: There is a more up-to-date version ( 2.6 ) of the dependency commons-io:commons-io:2.0 available. -> [Help 1] Ing kene kita duwe kesalahan mbangun sing disebabake dening plugin kasebut. Pesen kesalahan nyatakake yen kita nggunakake versi 2.0 nalika 2.6 kasedhiya. Umumé, Maven minangka alat sing migunani banget. Bisa uga angel digunakake ing wiwitan, nanging latihan, nggawe proyek sampeyan ing Maven, lan sawise sawetara wektu sampeyan bakal seneng banget karo asil kasebut. Artikel iki sengaja ngilangi akeh rincian babagan Maven - kita fokus ing sing penting. Nanging ora ana watesan kanggo kesempurnaan: sampeyan bisa maca liyane babagan Maven ing situs web resmi produk . Part 5. Servlets. Nulis aplikasi web sing prasaja Part 6. Wadah Servlet Part 7. Ngenalake pola MVC (Model-View-Controller) Part 8. Nulis aplikasi spring-boot cilik
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION