首页 > 解决方案 > Maven 在拥有主类的同时强制使用特定的 Java 版本

问题描述

我希望我的代码在 Java 8 或更高版本下编译。但是要使用它,据我所知,我必须使用编译器插件。

但是我希望我的最终 JAR 被执行,我可以告诉主类。这似乎是 JAR 插件中的一个选项。那么我该如何同时使用呢?

标签: javamavenmaven-plugin

解决方案


您可以一起使用多个 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-pluginmaven-shade-plugin. 你可以在这里看到


推荐阅读