you tutorial than running rather que provided plugin perhaps org mvn jre jdk failed example espaƱol compiler compile are java maven jar manifest

java - tutorial - no compiler is provided in this environment. perhaps you are running on a jre rather than a jdk?



Maven-No se puede ejecutar JAR (2)

Después de crear un proyecto mvn de muestra, agregué mis dependencias org.restlet y código Java.

Entonces, construí con éxito mi JAR a través de la mvn install . Finalmente, me encontré con un error al intentar ejecutar el JAR.

vagrant$ java -jar target/my-app-1.0-SNAPSHOT.jar Failed to load Main-Class manifest attribute from target/my-app-1.0-SNAPSHOT.jar


Necesitas establecer la clase principal en el manifiesto usando el maven-jar-plugin

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>com.someclass.Main</mainClass> </manifest> </archive> </configuration> </plugin>

Tomado de here .

EDITAR

Si desea empaquetar el tarro resultante con dependencias, puede usar este

<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>fully.qualified.MainClass</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin>

Tomado de here .


Si no tienes un manifiesto en tu jar, invocar java -jar no funcionará.

Usa este comando si no tienes un manifiesto:

java -cp foo.jar full.package.name.ClassName