Daripada menulis skrip panjang untuk membina projek anda dan memuat turun kebergantungan secara manual, mengapa tidak menggunakan Maven dan menyingkirkan kekacauan ini. Blog mengenai tutorial Maven ini akan merangkumi semua yang anda perlukan untuk memulakan penggunaan Maven untuk projek anda. Setelah memahami tutorial Maven ini dengan teliti, kemungkinan langkah seterusnya adalah mempelajari Jenkins yang merangkumi fasa Integrasi Berterusan .
Dalam blog ini di tutorial Maven, kita akan membahas topik berikut:
- Mengapa kita memerlukan Maven?
- Apa itu Maven?
- Senibina Maven
- Kitaran hidup fasa, fasa dan matlamat
- Projek demo.
Mengapa kita memerlukan Maven?
Sekiranya anda mengusahakan projek Java, biasanya anda memerlukan pergantungan. Ketergantungan tidak lain hanyalah perpustakaan atau fail JAR. Anda perlu memuat turun dan menambahkannya secara manual. Juga, tugas menaik taraf tumpukan perisian untuk projek anda dilakukan secara manual sebelum Maven. Oleh itu, ada keperluan untuk membina alat yang lebih baik yang akan menangani masalah tersebut.
Di sinilah Maven masuk ke dalam gambar. Maven dapat menyelesaikan semua masalah anda yang berkaitan dengan kebergantungan. Anda hanya perlu menentukan pergantungan dan versi perisian yang anda mahukan dalam fail pom.xml di Maven dan Maven akan menguruskan selebihnya.Jadi sekarang mari kita cuba memahami apa sebenarnya Maven.
Apa itu Maven?
Projek Maven dikembangkan oleh Apache Software Foundation di mana sebelumnya merupakan sebahagian dari projek Jakarta. Maven adalah alat automasi binaan yang kuat yang terutama digunakan untuk projek berasaskan Java. Maven membantu anda menangani dua aspek kritikal dalam membina perisian -
- Ia menerangkan bagaimana perisian dibina
- Ia menggambarkan kebergantungan.
Maven lebih suka konvensyen daripada konfigurasi. Maven memuat turun pustaka Java dan plugin Maven secara dinamik dari satu atau lebih repositori seperti Maven Central Repository dan menyimpannya dalam cache tempatan. Artifak projek tempatan juga dapat dikemas kini dengan cache tempatan ini. Maven juga dapat membantu anda membina dan mengurus projek yang ditulis dalam C #, Ruby, Scala, dan bahasa lain.
Fail Model Objek Projek (POM) adalah fail XML yang mengandungi maklumat yang berkaitan dengan projek dan maklumat konfigurasi seperti pergantungan, direktori sumber, plugin, tujuan, dan lain-lain yang digunakan oleh Maven untuk membina projek. Apabila anda menjalankan perintah maven, anda akan memberikan file POM kepada maven untuk melaksanakan perintah tersebut. Maven membaca fail pom.xml untuk menyelesaikan konfigurasi dan operasinya.
timbunan dan timbunan dalam java
Objektif Maven
Bilakah seseorang harus menggunakan Maven?
- Sekiranya terlalu banyak kebergantungan untuk projek tersebut.
- Apabila versi kebergantungan kerap dikemas kini.
- Pembinaan, integrasi, dan pengujian yang berterusan dapat ditangani dengan mudah dengan menggunakan maven.
- Apabila seseorang memerlukan cara mudah untuk menghasilkan dokumentasi dari kod sumber, menyusun kod sumber, mengemas kod yang disusun ke dalam fail JAR atau fail ZIP.
Senibina Maven
Kitaran hidup fasa, fasa dan matlamat
1. Kitaran hidup Maven
Terdapat kitaran hidup tertentu yang diikuti Maven untuk menyebarkan dan menyebarkan projek sasaran.
Terdapat tiga kitaran hidup terbina dalam:
- lalai - Ini adalah kitaran hidup utama Maven kerana bertanggungjawab untuk pelaksanaan projek.
- bersih - Kitaran hidup ini digunakan untuk membersihkan projek dan membuang semua fail yang dihasilkan oleh binaan sebelumnya.
- tapak - Tujuan kitaran hidup ini adalah untuk membuat dokumentasi tapak projek.
Setiap kitaran hidup terdiri dari urutan fasa. Kitaran hidup binaan lalai terdiri daripada 23 fasa kerana ia adalah kitaran hidup binaan utama Maven
Sebaliknya, kitaran hidup bersih terdiri daripada 3 fasa, sementara kitaran hidup di lokasi terdiri daripada 4 fasa.
2. Fasa Maven
Fasa Maven tidak lain adalah tahap dalam kitaran hidup membina Maven. Setiap fasa melaksanakan tugas tertentu.
Berikut adalah beberapa fasa penting dalam kitaran hidup binaan lalai -
- mengesahkan - Fasa ini memeriksa apakah semua maklumat yang diperlukan untuk binaan tersedia
- menyusun - Fasa ini menyusun kod sumber
- ujian-menyusun - Fasa ini menyusun kod sumber ujian
- ujian - Fasa ini menjalankan ujian unit
- pakej - Pakej fasa ini menyusun kod sumber ke dalam format yang boleh diedarkan (balang, perang)
- ujian integrasi - Fasa ini memproses dan menggunakan paket jika diperlukan untuk menjalankan ujian integrasi
- pasang - Fasa ini memasang pakej ke repositori tempatan
- menyebarkan - Fasa ini menyalin paket ke repositori jauh
Maven melaksanakan fasa mengikut urutan tertentu. Ini bermaksud bahawa jika kita menjalankan fasa tertentu menggunakan perintah seperti mvn, ini tidak hanya akan menjalankan fasa yang ditentukan tetapi semua fasa sebelumnya juga.
Sebagai contoh, jika anda menjalankan perintah mvn deploy, iaitu, phase deploy yang merupakan fasa terakhir dalam kitaran hayat build default, maka ini akan menjalankan semua fasa sebelum fase deploy juga.
3. Matlamat Maven
Urutan tujuan merupakan fasa dan setiap tujuan melaksanakan tugas tertentu. Apabila anda menjalankan fasa, maka Maven melaksanakan semua tujuan mengikut urutan yang berkaitan dengan fasa tersebut. Sintaks yang digunakan adalah plugin: tujuan. Beberapa fasa dan tujuan lalai yang terikat kepada mereka adalah seperti berikut:
- penyusun: menyusun - menyusun fasa
- penyusun: ujian - fasa kompilasi ujian
- surefire: ujian - fasa ujian
- install: install - install phase
- jar dan perang: perang - fasa pakej
Plugin Maven adalah sekumpulan matlamat. Walau bagaimanapun, matlamat ini tidak semestinya terikat pada fasa yang sama.Contohnya, plugin Maven Failsafe yang bertanggungjawab untuk menjalankan ujian integrasi. Untuk ujian unit, anda memerlukan pemalam Maven surefire.
Projek Demo
Dalam bahagian ini Maven tutorial, kita akan melihat projek demo. Untuk menunjukkan bagaimana membina projek menggunakan Maven, saya telah membuat Projek Java bersama dengan TestNG menggunakan Eclipse IDE. Ini adalah program yang sangat mudah di mana saya telah menulis kod untuk menguji tajuk laman web.
Program ini akan melancarkan penyemak imbas web secara automatik, menavigasi ke laman web yang disebut dalam kod, mengambil tajuk laman web itu dan membandingkannya dengan tajuk yang diharapkan. Sekiranya tajuk sebenar dan tajuk yang diharapkan sesuai, maka kes ujian lulus tidak akan berjaya.
Jadi untuk projek ini, anda perlukan , Maven dan Eclipse yang dimuat turun pada sistem anda. Versi yang saya gunakan pada sistem saya adalah seperti berikut -
- Gerhana - Edisi Perusahaan versi 4.12.0 (2019-06)
- Jawa - versi 1.8.0_211
- Maven - versi 3.6.1
- Selain daripada ini, anda perlu memuat turun plugin TestNG untuk Eclipse dan anda boleh memuat turunnya menggunakan langkah-langkah berikut -
- Buka Eclipse dan pergi ke Bantuan. Dalam Bantuan klik di pasar Eclipse.
- Ketik TestNG di kotak Cari dan klik Go. Dalam hasilnya, anda akan melihat 'TestNG for Eclipse'. Anda perlu memuat turunnya.
- Setelah anda mengatur sistem anda dengan perkara-perkara yang disebutkan di atas, anda sudah bersedia untuk membuat projek demo menggunakan Maven. Jadi sekarang saya akan memberitahu anda semua langkah yang diperlukan untuk melakukan ini.
- Di Eclipse, klik pada Fail -> Baru -> Projek Maven.
- Klik Buat projek sederhana (langkau pemilihan pola dasar) dan kemudian klik seterusnya.
- Sekarang anda akan melihat tetingkap dengan parameter seperti Id Group, Artifact Id dan sebagainya.
- Id Kumpulan adalah Id unik kumpulan yang memiliki projek.
- Artifact Id adalah nama unit penyusunan terakhir.
- Versi adalah versi artifak yang dibuat. SNAPSHOT menunjukkan kerja sedang dijalankan.
- Pembungkusan boleh menjadi balang, perang atau pom bergantung pada projek anda. Untuk projek kami, kami akan memilih balang. Kemudian berikan nama projek anda.
- Sebaik sahaja anda membuat projek maka anda akan melihat struktur projek projek Maven anda. Di sini anda dapat melihat perkara berikut -
- pom.xml
- src dan sasaran
- src / main / java
- src / test / java
- Kebergantungan Maven
- Sekarang buat fail kelas dalam src / main / test dan beri nama DemoClass. Kelas ini mengandungi kod Selenium yang kami gunakan untuk ujian. Sekarang kita telah menambahkan Selenium, TestNG dependencies dan Maven compiler dan Surefire plugin ke fail pom.xml. Kod untuk DemoClass dan pom.xml diberikan di bawah:
pakej maven.selenium.testng import org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver import org.testng.annotations.Test public class DemoClass {@Test public void test () lemparkan InterruptException {// perisytiharan dan instansiasi objek / pemboleh ubah //System.setProperty('webdriver.gecko.driver','/home/edureka/Downloads/geckodriver ') // Pemacu WebDriver = FirefoxDriver baru () // komen 2 baris di atas dan komen di bawah 2 baris untuk menggunakan Sistem Chrome.setProperty ('webdriver.chrome.driver', 'C: UsersArvind PhulareDesktopchromedriver.exe') Pemacu WebDriver = ChromeDriver baru () String baseUrl = 'http://newtours.demoaut.com/' String expectTitle = 'Welcome: Mercury Tours' String actualTitle = '' // lancarkan Fire fox dan arahkan ke pemacu URL Base.get (baseUrl) // dapatkan nilai sebenar tajuk sebenarnyaTitle = driver.getTitle () Thread.sleep (3000 ) / * * bandingkan tajuk sebenar halaman dengan yang diharapkan dan cetak * hasilnya sebagai 'Lulus' atau 'Gagal' * / if (actualTitle.contentEquals (dijangkaTitle)) {System.out.println ('Test Passed!')} lain-lain {System.out.println ('Test Failed')} // tutup Fire fox driver.close ()}}
4.0.0 maven.selenium maven.selenium.testng 0.0.1-SNAPSHOT EdurekaDemo 2.53.1 6.9.10 org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 org.apache.maven.plugins maven-surefire-plugin 2.18 .1 testng.xml org.seleniumhq.selenium selenium-java 3.141.59 org.testng testng 6.14.3 ujian
Sebelum menjalankan projek, kita perlu menukar fail kelas DemoClass ke fail TestNG. Untuk melakukannya, klik kanan pada DemoClass -> TestNG -> Convert to TestNG.
Sekarang untuk menjalankan projek, klik kanan pada projek -> Jalankan sebagai -> Maven clean. Ini akan membersihkan projek dengan membuang semua binaan sebelumnya.
Selepas Maven clean, anda perlu menguji projek kerana kami telah menulis kod untuk menguji aplikasi web. Oleh itu, klik kanan pada projek -> Jalankan sebagai -> Uji Maven. Ini akan membuka laman web dan sesuai dengan tajuk laman web. Sekiranya ia sepadan maka kes ujian kami akan lulus.
Kita juga dapat melaksanakan perintah di atas menggunakan command prompt. Untuk itu, kita memerlukan jalan fail pom.xml.
- Anda boleh mendapatkan jalan dengan mengklik kanan pada fail pom.xml -> Properties -> Lokasi.
- Salin jalan, kemudian buka command prompt dan tampal di sana menggunakan cd. cd C: / Pengguna / Arvind Phulare / gerhana-ruang kerja / maven.selenium.testng.
- Sebaik sahaja anda melakukan ini, anda boleh mengetik semula perintah Maven seperti mvn clean dan mvn test.
Oleh itu, ini adalah dari pihak saya dalam tutorial blog Maven ini. Saya harap anda telah memahami perkara yang telah kita bincangkan dalam tutorial Maven ini.
Sekarang setelah anda memahami tutorial Maven ini, lihat ini oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia. Kursus Latihan Persijilan Edureka DevOps membantu pelajar memahami apa itu DevOps dan memperoleh kepakaran dalam pelbagai proses dan alat DevOps seperti Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack dan GIT untuk mengautomasikan beberapa langkah dalam SDLC.
menulis jurubahasa dalam java
Ada soalan untuk kami? Sila sebutkan di bahagian komen dari tutorial Maven ini dan kami akan menghubungi anda