Maven是常用的Java项目管理工具,项目多的时候,难免会出现需要不同JDK的情况,而一般我们系统都会默认设置一个版本的JDK,每个项目都去更改默认JDK配置不免有些麻烦,因此可以利用Mavel Toolchain功能,为不同的项目选择相应的工具链。
配置文件
配置文件与settings.xml文件路径一致,也有用户级别,系统级别,我们一般配置用户级别的配置文件(~/.m2/toolchains.xml)。
<?xml version="1.0" encoding="UTF-8"?>
<toolchains>
<toolchain>
<type>jdk</type>
<provides>
<version>1.8</version>
<vendor>OpenJDK</vendor>
</provides>
<configuration>
<jdkHome>/Library/Java/JavaVirtualMachines/openjdk-8.jdk</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>21</version>
<vendor>Temurin</vendor>
</provides>
<configuration>
<jdkHome>/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home</jdkHome>
</configuration>
</toolchain>
</toolchains>
这里配置了两个JDK,一个是OpenJDK 1.8,一个是JDK 21。
使用Toolchain
需要使用maven-toolchains-plugins插件进行配置。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-toolchains-plugin</artifactId>
<version>1.1</version>
<configuration>
<toolchains>
<version>1.8</version>
<vendor>OpenJDK</vendor>
</toolchains>
</configuration>
</plugin>