【总结】Idea 编译maven项目报错NoSuchMethodError DefaultModelValidator

2023-05-16

从网上git clone了一个项目,本地编译compile、打包package都没问题。
但是启动服务,启动不了,且查看Dependency Analyzer 没有任何依赖信息。执行Reimport时,报错如下。

错误信息

org.codehaus.plexus.component.repository.exception.ComponentLookupException: com.google.inject.ProvisionException: Unable to provision, see the following errors:

  1. Error injecting constructor, java.lang.NoSuchMethodError: org.apache.maven.model.validation.DefaultModelValidator: method ()V not found
    at org.jetbrains.idea.maven.server.embedder.CustomModelValidator.(Unknown Source)
    while locating org.jetbrains.idea.maven.server.embedder.CustomModelValidator
    at ClassRealm[maven.ext, parent: ClassRealm[plexus.core, parent: null]] (via modules: org.eclipse.sisu.wire.WireModule -> org.eclipse.sisu.plexus.PlexusBindingModule)
    while locating org.apache.maven.model.validation.ModelValidator annotated with @com.google.inject.name.Named(value=ide)
    1 error
    role: org.apache.maven.model.validation.ModelValidator
    roleHint: ide

Dependency Analyzer 依赖分析插件,显示不了,全是空白。

问题分析

从错误信息看,根据以往经验,凡是遇到NoSuchMethodError的,一律可以理解为jar包冲突。再仔细看关键信息org.apache.maven.model.validation.DefaultModelValidator该类不就是maven的类吗。

查看idea maven版本,配的是3.8.6。
在这里插入图片描述
问题已经大致清楚了,配置的maven版本号过高,idea版本不匹配导致。

解决问题

设置maven 为低版本,从3.8.6 降到3.6.3,使用idea内置的maven版本。
通常情况下,使用idea内置的maven版本,就一定不会错的。 在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【总结】Idea 编译maven项目报错NoSuchMethodError DefaultModelValidator 的相关文章

随机推荐