首页 > 解决方案 > 不支持 1.8 版

问题描述

我有一个使用 Java 8 的项目。

到目前为止,我们在 pom 中将源和目标版本指定为 1.8:

<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>

我们想利用 Java 9+ 的“-release”选项并添加以下内容:

<maven.compiler.release>1.8</maven.compiler.release>

但是现在我们得到以下错误:

Fatal error compiling: release version 1.8 not supported

我们使用 maven 3.5.3、版本 3.8.0 中的 maven-compiler-plugin 和 Java 10 来编译项目。

这里有什么问题?

标签: javamavenjava-8maven-compiler-plugin

解决方案


这应该工作

<maven.compiler.release>8</maven.compiler.release>

因为该<release>属性仅适用于主要版本的发行版。

顺便说一句,这是假设这是实际编译器插件配置中使用的参数,有点像:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <release>${maven.compiler.release}</release>
    </configuration>
</plugin>

推荐阅读