无法找到或加载主类 org.apache.maven.wrapper.MavenWrapperMain
Posted
技术标签:
【中文标题】无法找到或加载主类 org.apache.maven.wrapper.MavenWrapperMain【英文标题】:Could not find or load main class org.apache.maven.wrapper.MavenWrapperMain 【发布时间】:2018-10-10 18:21:25 【问题描述】:我在这里有一个 Spring Boot 项目:https://github.com/jcasbin/jcasbin-springboot-plugin。我遇到了the following error in 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.
mvnw
命令似乎失败了。此文件由我的 IDE 生成:IntelliJ IDEA 2018.1。不知道是干什么用的,为什么会失败?
我已经在 Spring Boot 的 github 问题 here 中提出了一个问题,但 Spring 项目说这是 Maven 包装器的问题,并指出我在这里。我不太明白这是什么意思。这是一个 Maven 错误吗?那么如何修复错误呢?
【问题讨论】:
不妨看看How to create a Minimal, Complete, and Verifiable example...我相信没有人愿意从零开始阅读和理解你的代码 这不是错误,您需要查看“mvn install”的maven输出日志。 What does "Could not find or load main class" mean?的可能重复 【参考方案1】:菲尔的回答是正确的。 以下是如何创建 .mvn 目录,其中包含所需的 jar。 我在这里找到了答案 (https://www.baeldung.com/maven-wrapper)
如果你有 maven 并且想让 maven wrapper 工作,你需要设置 maven wrapper:
mvn -N io.takari:maven:wrapper
它应该创建 .mvn 目录并将所需的 jar 放入其中。
【讨论】:
虽然@PhilWebb 的回答可能是正确的,但它解决了诊断问题,但没有解决问题。这有帮助,尽管takari
是什么,是否有标准的库/包?
这帮助我们让我们的 jhispter 应用程序正常工作 - 谢谢
如果您使用的是 Windows,请确保您拥有 wrapper/maven-wrapper.jar
【参考方案2】:
您的 git 存储库中缺少 .mvn
文件夹。您应该有一个名为.mvn
的文件夹,其中包含文件wrapper/maven-wrapper.jar
、wrapper/maven-wrapper.properties
和jvm.config
。也许您错过了它,因为它是一个隐藏文件夹。
尝试从命令行执行git add -f .mvn
,然后提交并推送。
【讨论】:
请注意,我实际上已经创建了 .mvn 目录,但由于某种原因仍然必须这样做。 在我的情况下,我有 .mvn 目录,但我需要安装 git-lfs 才能正确检出 maven-wrapper.jar(否则它会被文本文件替换)【参考方案3】:对于看到此错误的 Windows 用户,请检查 .mvn
文件夹文件是否已转换为 CRLF。如果是这样,将它们更改为 LF 可能会解决您的问题。
【讨论】:
【参考方案4】:我实际上只是做了 mvn clean install 并且它起作用了,我实际上使用的是旧版本的 spring 2.0
【讨论】:
以上是关于无法找到或加载主类 org.apache.maven.wrapper.MavenWrapperMain的主要内容,如果未能解决你的问题,请参考以下文章