26 Pertanyaan dan Jawaban Wawancara Maven Paling Penting [Untuk Freshers & Berpengalaman]

Diterbitkan: 2021-01-21

Daftar isi

Ringkasan

Anda sudah tahu keahlian di Maven bernilai banyak uang hari ini atau Anda tidak akan berada di sini. Bagaimanapun, Maven adalah alat pilihan untuk sebagian besar perusahaan top dan tentu saja, mereka tertarik untuk mempekerjakan individu seperti Anda untuk maju dalam persaingan.

Sekarang, itu akan menjadi dunia yang terlalu sempurna di mana Anda tahu persis pertanyaan mana yang akan Anda tanyakan dalam wawancara kerja Anda berikutnya. Namun, kami memiliki hal terbaik berikutnya untuk Anda: daftar pertanyaan dan jawaban wawancara Maven yang paling sering ditanyakan. Ini mungkin hanya memberi Anda pekerjaan yang Anda incar. Jadi, mari kita gali!

Pertanyaan dan Jawaban Wawancara Maven

Pertanyaan 1: Apa itu Maven?

Apache Maven adalah alat otomatisasi pembangunan yang efektif yang dihosting oleh Apache Software Foundation yang digunakan untuk membangun dan mengelola proyek yang ditulis dalam Java. Ini juga mendukung manajemen proyek yang ditulis pada C/C++, Ruby, Scala, dan beberapa bahasa pemrograman lainnya. Maven menggunakan kerangka kerja siklus hidup build default untuk mengotomatisasi dan memahami infrastruktur proyek.

Pertanyaan 2: Apa tujuan Maven?

Untuk membantu pengembang memahami status upaya pengembangan lengkap dengan cara yang menghemat waktu, perhatian utama Maven adalah:

  • Untuk membuat proses proyek pembangunan menjadi sederhana

Maven memberi pengembang akses ke mekanisme yang mendasarinya tetapi melindungi mereka dari beberapa detail lainnya.

  • Untuk mengaktifkan keseragaman dalam sistem build

Proyek Maven dibangun menggunakan sistem plugin dan Project Object Model (POM). Membiasakan diri Anda dengan satu proyek dapat membantu Anda memahami semua pembangunan proyek Maven. Ini sangat efisien dalam menghemat waktu.

  • Memberikan informasi proyek yang berharga untuk meningkatkan efisiensi

Informasi ini terutama bersumber dari POM dan sebagian dari sumber proyek Anda. Informasi yang disediakan Maven termasuk dependensi yang digunakan, laporan pengujian unit, laporan plugin dari produk analisis kode pihak ketiga, dll.

  • Menciptakan ruang untuk menanamkan praktik pengembangan terbaik

Ini melibatkan fokus pada prinsip-prinsip pengembangan saat ini dalam hal eksekusi, laporan pengujian unit, spesifikasi, dll.

Pertanyaan 3: Jelaskan urutan penerapan proyek?

Proses penyebaran proyek mencakup langkah-langkah berikut:

Langkah 1: Kode dari semua proyek yang sedang berlangsung dimasukkan ke SVN atau repositori kode sumber. Hal ini dilakukan agar kode dapat ditandai.

Langkah 2: Seluruh kode sumber dari SVN diunduh.

Langkah 3: Langkah ketiga melibatkan membangun aplikasi.

Langkah 4: Output build yang diperoleh sebagai file EAR atau file WAR disimpan di lokasi umum jaringan.

Langkah 5: File diambil dari jaringan dan disebarkan ke lokasi produksi.

Langkah 6: Setelah proses penerapan selesai, dokumentasi diperbarui dengan tanggal dan versi aplikasi.

Pertanyaan 4: Aspek mana yang dikelola oleh Maven?

Pengembang di Maven mengelola aspek berikut:

  • Dependensi yang digunakan oleh sebuah proyek
  • SCM (Manajemen Konfigurasi Perangkat Lunak)
  • Rilis dan Build
  • Detail dokumentasi
  • Pelaporan
  • Distribusi
  • milis

Pertanyaan 5: Perintah mana yang memungkinkan Anda membangun situs Maven dengan cepat?

Perintahnya adalah-

situs mvn

Pertanyaan 6: Apa saja fitur Maven?

Beberapa fitur utama Maven adalah sebagai berikut:

  1. Ini mendorong pengembang untuk mengikuti praktik pengembangan terbaik. Ini membuat pembangunan proyek lebih sederhana dan lebih cepat – proyek baru dapat dimulai dalam beberapa detik.
  2. Ini memungkinkan penggunaan yang konsisten yang berarti tidak ada waktu tambahan ketika pengembang baru masuk ke proyek.
  3. Maven mengelola dependensi secara efisien, yang berarti pembaruan dilakukan secara otomatis, dan dependensi transitif diurutkan.
  4. Ini memungkinkan akses simultan ke beberapa proyek.
  5. Ini berisi repositori ekstensif perpustakaan dan metadata. Ada juga pengaturan untuk memungkinkan akses ke proyek Open Source terbaru dan terbesar secara real-time.
  6. Ini memungkinkan kompatibilitas dengan ekstensi dan memungkinkan pengguna untuk menulis plugin di Java atau bahasa skrip lain seperti Ruby, C# dan Scala.
  7. Ada akses langsung ke rilis dan fitur baru yang tidak memerlukan konfigurasi tambahan.
  8. Menggunakan Maven, pengembang dapat membangun banyak proyek untuk meniru tipe keluaran yang telah ditentukan sebelumnya seperti JAR, WAR. Ini hampir tidak memerlukan skrip apa pun.
  9. Maven dapat membuat situs web atau PDF menggunakan metadata yang sama dengan build untuk menghasilkan laporan standar tentang status pengembangan proyek.
  10. Dengan hampir tidak ada perubahan konfigurasi, sistem kontrol sumber Anda dapat diintegrasikan. Maven kemudian akan memungkinkan Anda untuk mengelola rilis proyek berdasarkan tag tertentu. Data ini juga dapat dipublikasikan ke lokasi distribusi sehingga dapat digunakan oleh proyek lain.
  11. Repositori pusat JAR sangat berharga dan Maven mendorong Anda untuk menggunakannya bersama dengan dependensi lainnya. Melalui ini, JAR apa pun yang diperlukan dalam membangun proyek dapat diunduh dari repositori JAR pusat. Ini mirip dengan CPAN Perl dan memungkinkan penggunaan kembali JAR di seluruh proyek. Melalui komunikasi aktif antar proyek, masalah kompatibilitas ke belakang dapat dihilangkan.

Pertanyaan 7: Apa saja fase Siklus Hidup Bersih?

Fase siklus hidup bersih adalah sebagai berikut:

  1. pra-bersih
  2. membersihkan
  3. pasca-bersih

Pertanyaan 8: Definisikan POM.

POM (singkatan dari Project Object Model) adalah unit kerja fundamental di Maven. Dibuat sebagai ekstensi XML, disimpan di direktori dasar oleh pom.xml. Informasi mengenai berbagai konfigurasi yang dibuat oleh Maven adalah file ini.

Pertanyaan 9: Apa saja fase dari Siklus Hidup Situs?

Berikut ini adalah fase Siklus Hidup Situs:

  1. pra-situs
  2. lokasi
  3. pasca-situs
  4. penyebaran situs

Pertanyaan 10: Jika ditentukan dalam POM, elemen POM mana yang dapat diubah oleh profil?

Elemen POM berikut dapat dimodifikasi:

<plugin>

<properti>

<modul>

<pelaporan>

<repositori>

<pluginRepositori>

<ketergantungan>

<Manajemen Ketergantungan>

<manajemen distribusi>

Pertanyaan 11: Jelaskan Siklus Hidup Build Maven.

Urutan fase logis yang ditentukan untuk menentukan urutan eksekusi tujuan disebut sebagai Build Lifecycle. Setiap fase merupakan indikasi dari suatu tahap dalam siklus hidup.

Lihat: Top 10 Pertanyaan dan Jawaban Wawancara Boot Musim Semi Kritis

Pertanyaan 12: Apa saja 3 siklus hidup build dari Maven?

Tiga siklus pembangunan Maven adalah:

  1. Clean: Tahap ini untuk membersihkan artefak yang tersisa dari build sebelumnya. Siklus Hidup Bersih terdiri dari tiga fase: pra-pembersihan, pembersihan, dan pasca-pembersihan.
  2. Default (atau build): Siklus build default adalah tempat aplikasi dibangun.
  3. Situs: Setiap dokumentasi situs terkait dihasilkan dalam fase ini. Ada empat fase dalam siklus hidup situs yaitu: pra-situs, situs, pasca-situs, dan penyebaran situs.

Pertanyaan 13: Jelaskan tujuan di Maven.

Tujuan menandakan tugas tertentu yang merupakan bagian integral dari pembangunan dan pengelolaan proyek. Sebuah tujuan mungkin atau mungkin tidak terikat untuk membangun fase. Salah satu yang terikat ke fase pembangunan nol tidak harus dieksekusi dalam siklus hidup pembangunan. itu dapat dilakukan di luarnya dengan doa langsung.

Pertanyaan 14: Apa tujuan dari perintah berikut: mvn clean dependency:copy-dependencies package?

Perintah di atas digunakan untuk menghapus proyek. Kemudian akan menyalin semua dependensi dan menjalankan semua fase proyek.

Pertanyaan 15: Jelaskan Profil Build dalam terminologi Maven.

Profil Build mewakili grup nilai konfigurasi yang menggunakan nilai default build Maven yang dapat disetel atau diganti. Profil build memungkinkan kustomisasi build ke berbagai lingkungan (misalnya, lingkungan Produksi versus Pengembangan)

Pertanyaan 16: Sebutkan tiga Profil Bangun yang berbeda.

  1. Per Pengguna: Anda menentukan profil pembuatan per pengguna dalam file xml pengaturan Maven (%USER_HOME%/.m2/settings.xml).
  2. Per Proyek: Profil pembangunan per proyek ditentukan dalam salah satu dari dua file ini – file POM, pom.xml.
  3. Global: Profil build ini harus didefinisikan dalam file xml pengaturan global di Maven (%M2_HOME%/conf/settings.xml).

Pertanyaan 17: Apa lokasi default repositori lokal Anda?

Lokasi default adalah: ~/m2./repository .

Pertanyaan 18: Tulis perintah untuk memulai instalasi file JAR di repositori lokal Anda?

Perintahnya adalah: mvn install

Pertanyaan 19: Jelaskan secara singkat berbagai Plugin Maven.

Dua jenis Plugin Maven adalah:

  1. Membangun plugin: Plugin ini dijalankan selama proses pembangunan. Mereka harus menjalani konfigurasi di elemen <build/> dari file pom.xml.
  2. Plugin pelaporan: Ini dijalankan saat pembuatan situs berlangsung dan harus menjalani konfigurasi di elemen <reporting/> dari file pom.xml.

Pertanyaan 20: Perintah mana yang digunakan untuk membangun proyek Anda secara offline?

Perintah berikut digunakan: mvn o package

Pertanyaan 21: Apa perintah untuk mengecualikan ketergantungan?

Elemen pengecualian digunakan untuk mengeksekusi ketergantungan.

Pertanyaan 22. Bagaimana langkah untuk membersihkan plugin secara otomatis selama build?

Jika Anda menyertakan plugin bersih di dalam tag eksekusi di file pom.xml, plugin akan dibersihkan.

Pertanyaan 23: Bagaimana proses menghentikan penyebaran plugin ke POM anak?

Gunakan perintah berikut: set <inherited> ke false

Pertanyaan 24: Jelaskan penggunaan elemen eksekusi dalam file pom?

Elemen <execution> dalam file pom berisi informasi yang diperlukan untuk menjalankan plugin.

Pertanyaan 25: Sebutkan nama artefak yang sepenuhnya memenuhi syarat dari sebuah proyek.

Nama artefak proyek yang sepenuhnya memenuhi syarat adalah: <groupId>:<artifactId>:<version>

Pertanyaan 26: Sebutkan langkah-langkah untuk mereferensikan properti definitif di file pom.xml?

Untuk melakukannya, nama elemen XML yang digunakan dalam definisi nilai digunakan oleh nama properti di mana "pom" diizinkan berfungsi sebagai alias elemen proyek.

Artinya, ${pom.name} adalah referensi ke nama proyek, ${pom.version} menunjukkan versinya, dan ${pom.build.finalName} adalah nama file akhir yang dibuat pada kemasan proyek yang dibangun, dan seterusnya.

Itu saja yang ada dalam daftar pertanyaan dan jawaban ini untuk wawancara Maven. Kami harap ini berguna!

Wajib Dibaca: Pertanyaan & Jawaban Wawancara Jenkins 2021 untuk Freshers & Experienced

Pelajari Kursus Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Ini terutama mencakup sedikit tentang pengetahuan dasar Maven yang dimaksudkan untuk melengkapi seseorang untuk wawancara. Meskipun bukan daftar yang lengkap, ini meletakkan dasar untuk merayu perekrut dengan pengetahuan Anda tentang Maven.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang Jenkins, perangkat lunak full-stack, lihat Program PG Eksekutif upGrad & IIIT-B dalam Pengembangan Perangkat Lunak Full-stack yang dirancang untuk para profesional yang bekerja dan menawarkan 500+ jam pelatihan yang ketat, 9+ proyek , dan penugasan, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Apa itu Maven?

Maven adalah alat otomatisasi build yang mengunduh dependensi proyek secara otomatis, jadi Anda tidak perlu melakukannya sendiri. Ini mampu membangun, mengkompilasi, dan menguji proyek, jadi jika Anda mengerjakan banyak proyek berbeda, alat ini cocok untuk Anda. Setelah diinstal, Anda dapat menggunakan perintah sederhana untuk mengelola pembangunan dan pengujian proyek Anda, dan itu juga akan mengunduh dependensi proyek untuk Anda, jadi Anda tidak perlu melakukannya secara manual.

Apa itu Gradle?

Gradle adalah alat otomatisasi build. Alat build adalah aplikasi perangkat lunak yang dirancang untuk mengotomatisasi pembuatan perangkat lunak. Tujuan utamanya adalah untuk mengurangi jumlah upaya yang diperlukan untuk membangun produk dan mengelola proses pembangunan. Gradle adalah bahasa build alami yang dapat digunakan untuk membuat sistem build yang fleksibel dan dapat skrip. Gradle adalah proyek sumber terbuka dan dapat diintegrasikan dalam proses pembuatan perusahaan. Ini adalah alat build yang membangun lebih cepat dan lebih pintar daripada Ant, Maven, dan alat lainnya. Itu dirancang untuk skenario pembangunan multi-proyek dan berdasarkan konvensi atas konfigurasi. Ini adalah alat otomatisasi build yang membangun, menguji, dan menerbitkan aplikasi sesuai permintaan. Itu juga dapat menangani semua dependensi.

Apa itu membangun alat otomatisasi?

Alat otomatisasi build seperti Jenkins, TravisCI, dan CircleCI digunakan untuk mengotomatiskan proses build Anda dari awal hingga akhir. Ini termasuk membangun aplikasi, menjalankan pengujian unit, mengintegrasikan dengan sistem kontrol versi (seperti git), mengunggah artefak ke repositori pribadi atau publik, dan membuat laporan untuk setiap build. Manfaatnya adalah alat ini dapat dikonfigurasi untuk menjalankan proses pembuatan, pengujian, dan penerapan Anda secara otomatis. Setelah dikonfigurasi, mereka dapat menyediakan tim dan layanan integrasi berkelanjutan, yang memfasilitasi pengiriman berkelanjutan dan mereka dirancang dan diimplementasikan untuk menyediakan jalur pembangunan yang kuat dan skalabel.