Home  >  Article  >  Java  >  How Do I Specify Java Version in My Maven Project?

How Do I Specify Java Version in My Maven Project?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-21 10:13:09884browse

How Do I Specify Java Version in My Maven Project?

How to Specify Java Version in Maven: Differences Between Properties and Maven Compiler Plugin

Maven provides multiple methods for specifying the Java version used by your project:

1. Spring Boot Feature
Spring Boot uses a non-standard property, , to set the source and target Java versions. However, this is only applicable when using Spring Boot.

2. Maven Compiler Plugin with Source & Target
Using Maven compiler plugin with elements and is equivalent to setting the properties maven.compiler.source and maven.compiler.target.

3. Maven Compiler Plugin with Release
For Java 9 and later, Maven compiler plugin provides a simpler option using the maven.compiler.release property. It sets the same version for source, target, and bootstrap JVM.

Which Method to Use?

  • If using Spring Boot, the Spring Boot feature is recommended.
  • For Java 8 or below, use either the compiler plugin or property method as they are equivalent.
  • From Java 9, consider using the maven.compiler.release property for simplicity.

Handling JDK Version Differences
If the JDK in JAVA_HOME is incompatible with the specified Java version, set the compiler plugin as follows:

<plugin>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
    <source>1.8</source>
    <target>1.8</target>
    <compilerVersion>1.8</compilerVersion>
    <fork>true</fork>
    <executable>D:\jdk1.8\bin\javac</executable>
  </configuration>
</plugin>

Why Does the Compiler Plugin Appear in Maven Output?
Maven core plugins, including the compiler plugin, are used by default during Maven execution. They are not explicitly declared but are attached to the execution process.

The above is the detailed content of How Do I Specify Java Version in My Maven Project?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn