Это простой вопрос, но я не нашел хорошего решения.
Я создал проект maven, который совместим с java8 +.Я хочу, чтобы всякий раз, когда кто-то собирал проект, maven использовал java-версию, установленную на Java.
Другими словами, я хотел бы использовать сонет как:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<compilerVersion>${java.version}</compilerVersion>
</configuration>
</plugin>
Для JAXB я использовал следующее:
<profile>
<id>java-9+</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>java-8</id>
<activation>
<jdk>1.8</jdk>
</activation>
<dependencies>
<!-- add Java 8 dependencies -->
</dependencies>
</profile>
Должен работать в cli (mvn
команды), eclipse и в IntelliJ.