heroku -system.properties和java版本

bttbmeg0  于 2023-02-13  发布在  Java
关注(0)|答案(4)|浏览(132)

我想把我的java7应用程序部署到Heroku,但是我遇到了一些java版本的问题。
我添加了system.properties文件在我的项目根目录(其中srcpom.xml)与内容java.runtime.version=1.7,但我仍然得到这样的东西:

Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project lets-code: Fatal error compiling: invalid target release: 1.7

所以我有点不知道下一步该怎么办。

nr7wwzry

nr7wwzry1#

Heroku上的默认Java版本是Java 6。您需要遵循Guidelines以使您的maven项目在较新版本的JVM(1.7或1.8)上运行。您已经将system.properties文件添加到您的项目中。但是,您可能没有按照指定更新PATH,并且maven尝试使用OpenJDK 6构建您的应用,这导致无效目标发布异常。
更新PATH就可以了。

nzkunb0c

nzkunb0c2#

我使用了以下指南https://devcenter.heroku.com/articles/customizing-the-jdk
指定一个JDK版本如果www. example. com文件不存在,创建一个文件,指定版本,并提交到git。支持的版本在Java支持文章中有描述。文件的内容应该如下所示:system.properties file if one does not already exist, specify the version, and commit it to git. Supported version are described in the Java Support article. The file's contents should look something like this:
java. runtime. version = 11然后运行以下命令将文件添加到Git:
git add git提交-m "JDK 11"system.properties git commit -m "JDK 11"
对我很有效。

polkgigr

polkgigr3#

大部分的答案的问题将在上面。但有很多新的开发人员谁没有得到上面的问题解决。对于那些我在这里评论。
如果有人混淆了将www.example.com文件放在哪里system.properties来设置java版本和maven版本,建议将其放在与pom.xml文件相邻的位置(pom.xml文件附近或src文件夹之外)

qxgroojn

qxgroojn4#

\Project root folder
│  pom.xml
│  system.properties  // here, same depth of pom.xml
│          
├─src
│  ├─main
│  │  ├─java
│  │  │  │  module-info.java
│  │  │  │  
│  │  │  └─com
│  │  │      └─github
│  │  │          └─graycat27
│  │  │              └─myApp
│  │  │                  │  MyApp.java

这个位置很好。
那么Heroku的构建日志将是...

-----> Building on the Heroku-20 stack
-----> Using buildpack: heroku/java
-----> Java app detected
-----> Installing OpenJDK 17... done  // before set sys.prop, the version may JDK8
-----> Installing Maven 3.6.2... done
-----> Executing Maven
       $ mvn -DskipTests clean dependency:list install

相关问题