Sur mon Mac, j'essaie de compiler un code source Java 8 que j'ai écrit. Il se compile bien dans Eclipse, mais dans Maven, la compilation échoue.
Je reçois plusieurs erreurs de la forme :
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Users/admin/eclipse/workspaces/default/Java8/src/main/java/language/utilities/MapDemo.java:[14,33] lambda expressions are not supported in -source 1.7
(use -source 8 or higher to enable lambda expressions)
En exécutant mvn -v, on obtient :
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T16:41:47+00:00)
Maven home: /Users/admin/apache-maven-3.3.9
Java version: 1.8.0_91, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre
Default locale: en_IE, platform encoding: UTF-8
OS name: "mac os x", version: "10.12", arch: "x86_64", family: "mac"
L'exécution de la commande d'exportation montre que la variable JAVA_HOME est définie sur :
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"
Qu'est-ce que cette propriété '-source' ? Pourquoi dois-je la définir si ma version de Java est Java 8 ?