java - 不支持 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 来编译项目。
这里有什么问题?
解决方案
这应该工作
<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>
推荐阅读
- node.js - MongoDB 返回错误,代码 13 和描述未经授权
- c# - WebSocket Sharp 工作线程没有正确的值
- java - 在 switch 语句中使用扫描仪,但我的程序只保留打印默认值
- python - 分配之前引用的时间模块,但不是,时间模块是提前导入的。也许这是一个错误
- mp3 - 与其源 MP4 和 MP3 相比,组合 MP4 的大小增加
- javascript - MongoDB 聚合 $lookup 到具有管道语法和 _id 作为字符串的父数组字段
- javascript - 如何在 TypeScript 中定义类型的互斥属性?
- php - 数据库连接错误用户'root'@'localhost'的访问被拒绝(使用密码:否)
- c# - ASP.NET Core 自定义授权和内存缓存
- python - 带有dicts的可扩展迭代