Configuration de JAVA HOME pour Maven sur Windows 10


J'ai récemment mis à niveau vers Windows 10. J'essaie de créer un nouveau projet maven dans eclipse, mais il ne semble pas récupérer mon paramètre JAVA_HOME.

Voici le répertoire d'installation de JDK:

Et voici mon paramètre de variable d'environnement JAVA_HOME:

Si je lance mvn -version dans une invite de commande, maven semble obtenir la valeur correcte pour JAVA_HOME:

J'essaie ensuite de créer un nouveau projet maven dans eclipse, en utilisant un pom barebones.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>StaticVoidGames</groupId>
    <artifactId>DatabaseTest</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>DatabaseTest</name>
</project>

Mais le JRE du projet est 1.5 pour une raison quelconque:

Pour ce que ça vaut, mon JRE par défaut eclipse workspace est le même que mon paramètre JAVA_HOME.

J'ai essayé de changer manuellement le chemin de construction pour utiliser le jdk correct, mais il revient simplement. J'ai essayé de nettoyer le projet, de faire une mise à jour maven, de redémarrer eclipse, de redémarrer mon ordinateur et de créer un nouveau projet. Maven choisit toujours Java 1.5, qui n'est même pas installé sur mon machine.

Tout mon googling dit que maven devrait récupérer le paramètre JAVA_HOME pour déterminer quel Java utiliser, mais cela ne semble pas être le cas ici. Y a-t-il un autre paramètre qui me manque quelque part?

Author: A_Di-Matteo, 2016-01-14

1 answers

Selon screenshoot, Maven récupère correctement votre JAVA_HOME, mais ce que vous voyez dans Eclipse n'est pas la version de Java installée (1.5) mais la version que Maven utilisera par défaut pour compile.
Dans votre cas, Maven utilisera JDK 1.8 et compilera les paramètres source et target en 1.5 (version par défaut).

Pour mettre Maven au même niveau que la version Java installée, vous devez configurer le plugin Maven Compiler. Une fois cela fait et après une mise à jour Eclipse (clic droit sur le projet, Maven, Update Project), Eclipse mettra à jour sa vue en conséquence.

Vous pouvez ajouter à votre POM le plugin Maven Compiler suivant configuration:

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.3</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>

Alternativement, vous pouvez utiliser des propriétés Maven bien connues pour obtenir la même chose par seulement les paramètres:

<properties>
   <maven.compiler.source>1.8</maven.compiler.source>
   <maven.compiler.target>1.8</maven.compiler.target>
</properties>
 1
Author: A_Di-Matteo, 2016-01-13 22:40:42