разница между тегом / свойством release и тегом / свойством CompilerVersion, используемым в maven-compiler-plugin. проблемы при обновлении до java 11

#java #maven-plugin #maven-compiler-plugin

#java #maven-plugin #maven-compiler-plugin

Вопрос:

В чем разница между release тегом / свойством и compilerVersion тегом / свойством, используемым в maven-compiler-plugin , поскольку мы сталкиваемся с проблемой при использовании тега release при обновлении до java 11 при сборке с использованием <compilerVersion>11<compilerVersion> in pom.xml это работает, но терпит неудачу с приведенной ниже ошибкой, когда мы используем <release>11</release>

ошибка:

 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project Test: Fatal error compiling: invalid flag: --release -> [Help 1]
10:54:54 [ERROR] 
10:54:54 [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
10:54:54 [ERROR] Re-run Maven using the -X switch to enable full debug logging.
10:54:54 [ERROR] 
10:54:54 [ERROR] For more information about the errors and possible solutions, please read the following articles:
10:54:54 [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
 

Комментарии:

1. Вы уверены, что JDK 11 появляется на вашем ПУТИ перед любой версией до 9?

Ответ №1:

<compilerVersion> :

Версия компилятора для использования […], если fork установлено значение true .

<release> :

Аргумент -release для компилятора Java, поддерживаемый с Java9