Pourquoi modelVersion de pom.xml est nécessaire et toujours défini sur 4.0.0?

J’ai remarqué que de Maven de pom.xml est toujours défini sur 4.0.0.

Pouvez-vous m’aider s’il vous plaît comprendre quelle est l’importance de cette balise et pourquoi il devrait être réglé à 4.0.0?

Il est toujours défini sur 4.0.0 dans Maven 2 et 3, car, à l’heure actuelle, il n’existe aucun autre modèle.

Notez que modelVersion contient 4.0.0. C’est actuellement la seule version POM prise en charge pour Maven 2 et est toujours requirejse

Mais il ne devrait pas nécessairement être toujours réglé sur 4.0.0 s’il y avait une autre version du modèle. Un POM doit se conformer à un modèle. Disons que Maven 4 propose le modèle 4.1. Si vous écrivez votre pom conformément à la norme 4.1, il ne serait pas compatible avec Maven 3 et le modèle 4.0.0.

Il est défini comme obligatoire, éventuellement pour appliquer un modèle XML spécifique au cas où de nouveaux modèles seraient définis.

La version du modèle est la version du descripteur de projet que votre POM respecte. Il doit être inclus et défini. La valeur 4.0.0 vient d’indiquer qu’il est compatible Maven 3.

La réponse correcte devrait être la combinaison des réponses de @Toumi et @Boj. Consultez également https://cwiki.apache.org/confluence/display/MAVEN/POM+Model+Version+5.0.0 pour plus d’informations à ce sujet.