maven命令行创建项目,提示java.lang.NoClassDefFoundError: org/apache/maven/shared/invoker/MavenInvocationExcept

java.lang.NoClassDefFoundError: org/apache/maven/shared/invoker/MavenInvocationException

跪了,Java11,Maven从3.5.2升级到3.6.3还是不行,没有一点头绪。这是看的maven官方文档的入门,真服。

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

这是官方5分钟入门maven的文档,我40分钟都被卡在这里,真是怒火中烧。

找到此类的包,然后又根据别人文章中这个包所属的jar为

org\apache\maven\shared\maven-invoker\3.0.1\maven-invoker.jar

然后把3.0.1这个目录删除掉,重新执行maven命令。好了,错误变化了。

Caused by: java.lang.ClassNotFoundException: org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolverException

这说明上面的删除有效,是因为jar包不正确。回想删之前的maven-invoker.jar,用winRAR打开时会提示找不到结构。看来就是jar包下载不完整。真不知道这是哪里的问题。maven下载机制还是华为云的maven仓库的问题。对比两次jar包,大小竟然是一致的。fuck!!

明天继续吧,累了。

2021.3.27继续。

用二进制打开,两个jar的大小完全一样,然而第一个jar中的字节全TMD是零。

莫名其妙的bug。

接着找,org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolverException这个类找到,下面这个jar包,16进制打开,果然也是全0。

org\apache\maven\shared\maven-artifact-transfer\0.12.0\maven-artifact-transfer-0.12.0.jar

于是考虑把shared包删了,整个shared包重新下载。终于一遍成功!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

horo99

求个赞啦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值