java - Maven 在拥有主类的同时强制使用特定的 Java 版本
问题描述
我希望我的代码在 Java 8 或更高版本下编译。但是要使用它,据我所知,我必须使用编译器插件。
但是我希望我的最终 JAR 被执行,我可以告诉主类。这似乎是 JAR 插件中的一个选项。那么我该如何同时使用呢?
解决方案
您可以一起使用多个 maven 插件,每个插件执行不同的工作。您可以指定如下版本:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>${jdk.version}</source>
<target>${jdk.version}</target>
</configuration>
</plugin>
您无法使用maven-jar-plugin
. 为此,您需要maven-assembly-plugin
或maven-shade-plugin
. 你可以在这里看到