Estoy tratando de cargar mi proyecto de bot de discordia a Heroku usando Git bash Mi proyecto es java 10 y estoy usando Maven pero recibo este error:

remote:        [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project bot_discord: Fatal error compiling: invalid flag: --release -> [Help 1]
remote:        [ERROR]
remote:        [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
remote:        [ERROR] Re-run Maven using the -X switch to enable full debug logging.
remote:        [ERROR]
remote:        [ERROR] For more information about the errors and possible solutions, please read the following articles:
remote:        [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
remote:
remote:  !     ERROR: Failed to build app with Maven
remote:        We're sorry this build is failing! If you can't find the issue in application code,
remote:        please submit a ticket so we can help: https://help.heroku.com/
remote:
remote:  !     Push rejected, failed to compile Java app.
remote:
remote:  !     Push failed

¡Creo que necesito agregar algo a mi Pom.xml pero no entiendo qué agregar! mi pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>kino.bot</groupId>
  <artifactId>bot_discord</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Bot Ryo</name>
  <description>Mon bot</description>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
          <release>10</release>
        </configuration>
      </plugin>
    </plugins>
  </build>


  <repositories>
    <repository>
        <id>jcenter</id>
        <name>jcenter-bintray</name>
        <url>http://jcenter.bintray.com</url>
    </repository>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
  </repositories>

  <dependencies>
    <dependency>
        <groupId>net.dv8tion</groupId>
        <artifactId>JDA</artifactId>
        <version>3.7.1_422</version>
    </dependency>
    <dependency>
        <groupId>com.mashape.unirest</groupId>
        <artifactId>unirest-java</artifactId>
        <version>1.4.9</version>
    </dependency>
  </dependencies>

</project>

¿Qué necesito agregar a mi pom.xml?

3
Crøss Marian 16 sep. 2018 a las 04:39

5 respuestas

La mejor respuesta

Asegúrese de tener el archivo system.properties en el directorio raíz de su repositorio con los siguientes contenidos:

java.runtime.version=10

Para obtener más información, consulte la documentación de Heroku en versiones de Java

3
codefinger 16 sep. 2018 a las 13:37

Intente usar la versión 3.8.0 en lugar de 3.7.0. También asegúrese de que su JAVA_HOME esté configurado para su instalación de Java 8. Consulte este enlace

0
tom 16 sep. 2018 a las 05:07

Hay otra opción en lugar de agregar el archivo de propiedades en la ubicación del repositorio.

Puede agregar este código en POM.xml:

<properties>
    <java.version>1.8.0_171</java.version>
</properties>
0
dan 15 ene. 2019 a las 20:15

Elimine <release>10</release> de pom.xml y agregue system.properties en recursos con contenido java.runtime.version=10. Debería funcionar con jdk 10. O puede cambiar el JDK según sus necesidades.

0
Abhishek 27 nov. 2019 a las 20:49

El argumento de liberación solo es compatible desde Java9 (https: // maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html). Asegúrese de que su instalación de Maven esté utilizando al menos Java9.

2
user10367961user10367961 16 sep. 2018 a las 05:17