To compile and execute a JDK preview features with Maven, you need to add in the following configurations in your pom.xml
file:
- Compiler Plugin: The configuration should specify the JDK version and enable the preview features. It should look similar to this:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>21</release>
<compilerArgs>--enable-preview</compilerArgs>
</configuration>
</plugin>
</plugins>
</build>
- Surefire Plugin: If you’re using the Maven Surefire Plugin to run your tests, you should also enable the preview features there. The configuration may look similar to this:
<build>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<argLine>--enable-preview</argLine>
</configuration>
</plugin>
</plugins>
</build>
Before building your project, ensure that you have JDK 21-preview installed on your computer, and it’s properly set in JAVA_HOME
environment variable or in the IDE settings.
Then use Maven to package or install your project:
mvn clean package
# or
mvn clean install
Please ensure that you have the correct version of maven-compiler-plugin
and maven-surefire-plugin
that support the JDK 21-preview features. For the project that uses Spring MVC, you should make sure all dependencies are compatible with JDK 21-preview as well.