Mavenorg.codehaus.plexus.component.repository.exception.ComponentLookupException
Posted 幽灵雾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mavenorg.codehaus.plexus.component.repository.exception.ComponentLookupException相关的知识,希望对你有一定的参考价值。
【问题现象】
在使用maven构建springboot或springcloud项目中,运行Maven-“Reload Project”,提示如下错误:
java.lang.RuntimeException: java.lang.RuntimeException: 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 'void <init>()' not found
at org.jetbrains.idea.maven.server.embedder.CustomModelValidator.<init>(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")
【原因】
Maven的版本和IDEA的版本不兼容导致。
【解决】
需要使用相匹配的Maven版本和IDEA版本,介于无论重装Maven还是IDEA成本都很高,我们在IDEA中使用自带的Maven即可。
在IDEA中打开“Preferences”,找到“Maven”菜单,在“Maven home directory”中,选择IDEA自带的Maven3(自带Maven的版本肯定是兼容的),如图:
选择后,重新执行Maven-“Reload Project”等待成功即可
以上是关于Mavenorg.codehaus.plexus.component.repository.exception.ComponentLookupException的主要内容,如果未能解决你的问题,请参考以下文章
Mavenorg.codehaus.plexus.component.repository.exception.ComponentLookupException