maven 如何指定java版本时,我使用mvn包命令没有改变环境路径

gtlvzcf8  于 2023-05-06  发布在  Maven
关注(0)|答案(3)|浏览(312)

我的环境java版本是jdk8,现在我想使用Maven命令mvn package编译一些项目。如何指定java版本(如java11)来编译它而不改变环境路径,因为java版本在我的过程中是一个动态参数

q8l4jmvw

q8l4jmvw1#

使用A Different JDK编译源代码

<project>
      [...]
      <build>
        [...]
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
              <verbose>true</verbose>
              <fork>true</fork>
              <executable><!-- path-to-javac --></executable>
              <compilerVersion>11</compilerVersion>
            </configuration>
          </plugin>
        </plugins>
        [...]
      </build>
      [...]
    </project>

副作用是我们必须编辑pom.xml文件。

  • 我们可能会保留不同版本的pom.xml文件,如pom-java11.xmlpom-java17.xml
  • mvn -f <other pom file>,如mvn -f pom-java11.xml ...
vdzxcuhz

vdzxcuhz2#

使用此命令JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd 64/ mvn清洁包替换路径与你需要的jdk

vuktfyat

vuktfyat3#

在pom.xml中,您可以定义JDK的版本

就像

<properties>
    <java.version>1.8</java.version>
    <spring-cloud.version>2020.0.1</spring-cloud.version>
</properties>

相关问题