web-dev-qa-db-fra.com

Impossible de trouver ou de charger la classe principale org.Apache.maven.wrapper.MavenWrapperMain

J'ai un projet de démarrage de printemps ici: https://github.com/jcasbin/jcasbin-springboot-plugin . J'ai rencontré l'erreur suivante dans Travis CI :

Shell
3.43s$ ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
/home/travis/build/jcasbin/jcasbin-springboot-plugin
Picked up _Java_OPTIONS: -Xmx2048m -Xms512m
Error: Could not find or load main class org.Apache.maven.wrapper.MavenWrapperMain
The command "eval ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V " failed. Retrying, 2 of 3.

Il semble que la commande mvnw échoue. Ce fichier est généré par mon IDE: IntelliJ IDEA 2018.1. Je ne sais pas à quoi il sert et pourquoi il échoue?

J'ai déjà tiré un problème dans les problèmes de github de Spring Boot ici , mais le projet Spring a déclaré qu'il s'agissait du problème de Maven Wrapper et m'a signalé ce point Je ne comprends pas bien ce que cela signifie. Est-ce un bug Maven? Comment réparer l'erreur alors?

17
Yang Luo

Vous manquez le .mvn dossier dans votre référentiel git. Vous devriez avoir un dossier appelé .mvn qui contient les fichiers wrapper/maven-wrapper.jar, wrapper/maven-wrapper.properties et jvm.config. Peut-être l'avez-vous manqué parce que c'est un dossier caché.

Essayez de faire git add -f .mvn à partir de la ligne de commande puis commit et Push.

31
Phil Webb

La réponse de Phil est correcte. Et voici comment créer un répertoire .mvn avec le fichier jar nécessaire.
J'ai trouvé la réponse ici ( https://www.baeldung.com/maven-wrapper )

Si vous avez maven et que vous voulez que Maven Wrapper fonctionne, vous devez configurer Maven Wrapper:

mvn -N io.takari:maven:wrapper

Il devrait créer un répertoire .mvn et y placer le fichier jar nécessaire.

21
user3083339