Heroku部署Java(Maven)项目构建报错invalid target release:10问题咨询
Heroku Java Maven项目构建失败原因说明
核心错误定位
从构建日志中可以直接定位到报错根源:
Fatal error compiling: invalid target release: 10
可能的原因
- 项目
pom.xml配置的maven-compiler-plugin插件指定了源码版本、编译目标版本为Java 10,但Heroku构建环境默认使用的JDK版本低于10,无法识别该目标版本配置,直接触发编译失败。 - 未在项目中显式声明Heroku构建所需的Java版本,平台默认加载的JDK版本和项目依赖的版本不兼容。
解决方案
- 先确认
pom.xml中Maven编译插件的版本配置:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>10</source> <target>10</target> </configuration> </plugin>
- 在项目根目录下新建
system.properties文件,添加如下内容指定运行的Java版本:
java.runtime.version=10
如果没有强制使用Java 10的要求,也可以直接将pom.xml中的source和target版本调整为Heroku默认支持的长期支持版本(如11、17),即可解决版本不匹配问题。
内容的提问来源于stack exchange,提问作者Furkan Özmen
相关产品推荐
相关产品推荐

