Mengapa modelVersion dari pom.xml diperlukan dan selalu diatur ke 4.0.0?

Aku telah memperhatikan bahwa Maven's <modelVersion></modelVersion> dari pom.xml selalu diatur ke 4.0.0.

Bisakah anda membantu saya memahami apa pentingnya tag ini dan mengapa hal itu harus ditetapkan untuk 4.0.0?

Mengomentari pertanyaan (2)
Larutan

Hal ini selalu diatur ke 4.0.0 di Maven 2 dan 3, karena, saat ini, tidak ada model yang lain.

Perhatikan bahwa modelVersion berisi 4.0.0 . Yang saat ini hanya didukung POM versi untuk Maven 2 dan selalu dibutuhkan

Tapi itu tidak't tentu perlu untuk selalu diatur untuk 4.0.0 jika ada versi lain dari model. POM harus sesuai dengan model. Let's mengatakan Maven 4 datang dengan model 4.1. Jika anda menulis pom untuk mematuhi 4.1, itu tidak't akan kompatibel dengan Maven 3 dan model 4.0.0.

It's didefinisikan sebagai wajib, mungkin untuk menegakkan tertentu XML model dalam hal model-model baru yang ditetapkan.

Komentar (2)

model version adalah versi dari proyek deskriptor POM sesuai dengan. Perlu dimasukkan dan diatur. Nilai 4.0.0 hanya menunjukkan bahwa itu adalah kompatibel Maven 3.

Komentar (0)

Jawaban yang Benar harus menjadi kombinasi dari jawaban oleh @Toumi dan @Boj. Lihat juga https://cwiki.apache.org/confluence/display/MAVEN/POM+Model+Versi+5.0.0 untuk latar belakang lebih dari ini.

Komentar (0)