Maven - Укажите подрывную версию компилятора Java

При запуске Maven Update Maven изменяет версию jdk для моих проектов Eclipse. Я видел здесь много тем, спрашивающих, как указать версию Java для Maven, и это просто:

<properties>
   <maven.compiler.source>1.8</maven.compiler.source>
   <maven.compiler.target>1.8</maven.compiler.target>
</properties>

У меня установлены JDK 1.8.0_181 и 1.8.0_172. Если я хочу продолжать использовать 172 для своей системы, но хочу использовать 181 для компиляции, как я могу сообщить об этом maven? Могу ли я указать только основную версию (1.8), а не другие дополнительные номера версии?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
117
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Указанные вами числа не связаны с фактической версией JDK, которую вы используете. Обычно это устанавливается через JAVA_HOME. Вы также можете явно установить его в плагине компилятора Maven.

http://maven.apache.org/plugins/maven-compiler-plugin/examples/compile-using-different-jdk.html

Указанные вами свойства задают поведение компилятора. Вы можете, например, компилируйте с версией 1.7, даже если используете JDK 1.8.x (но не 1.8 с JDK 1.7.x).

Вы можете указать путь, используемый компилятором maven, указав путь к версии javac, которую вы хотите использовать.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
      <verbose>true</verbose>
      <fork>true</fork>
      <executable><!-- path-to-javac --></executable>
      <compilerVersion>1.3</compilerVersion>
    </configuration>
  </plugin>

Вы также можете использовать набор инструментов в maven. Это позволяет указать версию, а также путь к JDK, используемому для компиляции. Это позволит вам указать дополнительную версию, которую вы хотите использовать. Для настройки следуйте руководство из официальной документации.

Другие вопросы по теме