Maison >Java >javaDidacticiel >Spécification de la version Java dans Maven : propriétés et plug-in du compilateur – Quelle est la différence ?

Spécification de la version Java dans Maven : propriétés et plug-in du compilateur – Quelle est la différence ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-15 05:19:02229parcourir

Specifying Java Version in Maven: Properties vs. Compiler Plugin - What's the Difference?

Spécification de la version Java dans Maven : différences entre les propriétés et le plugin du compilateur

Question : Comment les approches de configuration la version Java via les propriétés et le plugin du compilateur Maven diffèrent ?

Réponse : Il existe trois manières courantes de spécifier la version Java dans Maven :

  • Fonctionnalité Spring Boot : Exclusif aux projets Spring Boot, elle permet de définir les versions source et cible avec la même valeur à l'aide de l'option propriété.
  • Plugin de compilateur Maven avec source et cible : Utilisation de et propriétés ou les configurer dans le plugin du compilateur est équivalent. Les deux méthodes définissent les versions source et cible Java.
  • Plugin du compilateur Maven avec version : Introduite dans la version 3.6, cette méthode utilise la propriété maven.compiler.release pour définir la source, la cible, et les options d'amorçage de la JVM basées sur une version Java spécifiée (par exemple, "9" pour Java 9).

Bonnes pratiques :

Java 8 et versions antérieures : Utilisation de et propriétés ou les configurer dans le plugin du compilateur est préférable.

Java 9 et supérieur : La propriété maven.compiler.release est une approche concise et recommandée pour définir la version Java et coupler fortement les options JVM source, cible et bootstrap.

Compatibilité croisée :

Si la version du JDK utilisée dans JAVA_HOME diffère de la version spécifiée dans le pom, assurez-vous que le plugin du compilateur spécifie à la fois le chemin de l'exécutable de la version cible du JDK et l'option fork définie sur true.

Plugins Maven Core :

Même s'ils ne sont pas explicitement déclarés dans le pom, Maven utilise des plugins de base, y compris le plugin du compilateur, pour des tâches spécifiques telles que la compilation de code et l'exécution de tests. L'icône goal peut afficher la liste des plugins attachés et leurs configurations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn