:これはgithubの中に私のコードですhttps://github.com/q463746583/CS4500-Assignment2私はローカルで正常に実行することができますが、私はHerokuの上のコードを展開しようとする一方で、エラーの説明があります:
[INFO] Downloaded from central: https://repo.maven.apache.org/maven2/com/thoughtworks/qdox/qdox/2.0-M9/qdox-2.0-M9.jar (317 kB at 6.0 MB/s)
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 4 source files to /tmp/build_3c4f3b86a26f6e3ae1cbe89639f79f26/target/classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13.261 s
[INFO] Finished at: 2019-01-24T00:47:07Z
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) on project myapp: Fatal error compiling: invalid target release: 11 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
! ERROR: Failed to build app with Maven
We're sorry this build is failing! If you can't find the issue in application code,
please submit a ticket so we can help: https://help.heroku.com/
! Push rejected, failed to compile Java app.
! Push failed
私は、これが関係していると思うのミスマッチあなたとの間にHerokuの上の目標とJavaランタイム環境とあなたのMavenコンパイラから生成されたローカルにコンパイルされたコード、あなたはHerokuのにプッシュしようとしています。
Herokuの者によると、ドキュメント:
Herokuのは、現在使用して、デフォルトでは、アプリケーションを実行するために、OpenJDKの8を。OpenJDKのバージョン9と7にも利用可能です。
サポートされている他のデフォルトのバージョンは次のとおりです。
- Javaの7 - 1.7.0_181
- Javaの8 - 1.8.0_191
- Javaの9 - 9.0.4
- Javaの10 - 10.0.2
- Javaの11から11
あなたは確かにあなたの中にいることを確認する必要がありようのpom.xmlのファイル、あなたのことをあなたはHerokuの上でターゲットとしているbuildpack Mavenのコンパイラは、適切なJAVAにJavaコードをコンパイルしています。たとえば、以下の我々は、Java 7ランタイム環境をターゲットにしています。
pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
次に、あなたがすべき作成system.properties
あなたがHerokuののデフォルトのJDK 1.8以外のランタイム環境ターゲットにしている場合は、プロジェクト内のファイルをランタイム環境を。あなたは、このようなように、ご希望のJavaランタイム環境を指定することでこれを行うことができます。
system.properties:
java.runtime.version=11
TLDR:
- あなたがしていることを確認し、適切なJAVA JDKを使用して
- あなたのことを確認してくださいMavenのコンパイラからターゲット環境があなたの目標とHerokuのJAVAランタイムと同じです。
- あなたがいる場合は、デフォルトを使用していないJAVA 8 JDKのランタイム環境が異なるの指定プロジェクトでsystem.propertiesファイルを作成するには、Javaランタイム的環境をサポート HerokuののJava buildpackのドキュメント内にリストとして。
うまくいけば、それが役立ちます