首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我试图运行mvn依赖项:tree时,我得到: java.lang.NoClassDefFoundError: org/sonatype/aether/version/VersionConstraint

当我试图运行mvn依赖项:tree时,我得到: java.lang.NoClassDefFoundError: org/sonatype/aether/version/VersionConstraint
EN

Stack Overflow用户
提问于 2020-10-28 10:14:22
回答 2查看 1.1K关注 0票数 1

我不知道为什么会这样。我也尝试删除我的m2存储库。

我也尝试过各种版本的maven插件(2.8)。

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.1.1</version>
</dependency>

下面是完整的堆栈跟踪:

代码语言:javascript
复制
 Error injecting: org.apache.maven.shared.dependency.graph.internal.Maven3DependencyGraphBuilder
java.lang.NoClassDefFoundError: org/sonatype/aether/version/VersionConstraint
at java.lang.Class.getDeclaredMethods0 (Native Method)
at java.lang.Class.privateGetDeclaredMethods (Class.java:2701)
at java.lang.Class.getDeclaredMethods (Class.java:1975)
at com.google.inject.spi.InjectionPoint.getDeclaredMethods (InjectionPoint.java:766)
at com.google.inject.spi.InjectionPoint.getInjectionPoints (InjectionPoint.java:683)
at com.google.inject.spi.InjectionPoint.forInstanceMethodsAndFields (InjectionPoint.java:378)
at com.google.inject.internal.ConstructorBindingImpl.getInternalDependencies 
          (ConstructorBindingImpl.java:181)


Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.version.VersionConstraint
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass (SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass (ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:239)
at java.lang.Class.getDeclaredMethods0 (Native Method)
at java.lang.Class.privateGetDeclaredMethods (Class.java:2701)
at java.lang.Class.getDeclaredMethods (Class.java:1975)
at com.google.inject.spi.InjectionPoint.getDeclaredMethods (InjectionPoint.java:766)
at com.google.inject.spi.InjectionPoint.getInjectionPoints (InjectionPoint.java:683)
at com.google.inject.spi.InjectionPoint.forInstanceMethodsAndFields (InjectionPoint.java:378)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-28 10:21:08

更新Maven版本,至少更新到3.0.x+或3.1.x+ 请看这里

此错误是由从Sonatype Aether迁移到Eclipse (MNG-5354)的Maven 3.1-alpha-1引起的,这对于某些插件来说是一个不兼容的更改。

其他报告这里声称使用了Maven 3.3.0,因此无论如何,首先尝试使用最新的稳定maven (您可以从这里获得它)

附带问题:您正在开发maven插件吗?通常,您不应该声明pom.xml中插件的依赖关系。

票数 1
EN

Stack Overflow用户

发布于 2022-01-17 17:01:18

您可以通过使用错误日志所述的官方页面所指示的插件的旧版本来解决问题:

代码语言:javascript
复制
mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:tree
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64570713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档