[ 
https://issues.apache.org/jira/browse/KARAF-6822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jean-Baptiste Onofré resolved KARAF-6822.
-----------------------------------------
    Resolution: Fixed

> “NoSuchMethodErrors” due to multiple versions of 
> org.codehaus.plexus:plexus-utils:jar
> -------------------------------------------------------------------------------------
>
>                 Key: KARAF-6822
>                 URL: https://issues.apache.org/jira/browse/KARAF-6822
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf
>    Affects Versions: 4.3.0
>            Reporter: Bing-ok
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>             Fix For: 4.3.0, 4.2.10
>
>
> Hi, there are multiple versions of *_org.codehaus.plexus:plexus-utils_* in 
> *_karaf\tooling\karaf-maven-plugin_*. As shown in the following dependency 
> tree, according to Maven's “nearest wins” strategy, only 
> *_org.codehaus.plexus:plexus-utils:3.0.24_* can be loaded, and 
> *_org.codehaus.plexus:plexus-utils:3.2.1_* will be shadowed.
> As *_org.codehaus.plexus:plexus-utils:3.2.1_* has not been loaded during the 
> building process, several methods are missing. However, the missing methods:
> 1. _*org.codehaus.plexus.util.xml.Xpp3DomBuilder: 
> org.codehaus.plexus.util.xml.Xpp3Dom 
> build(org.codehaus.plexus.util.xml.pull.XmlPullParser,boolean,org.codehaus.plexus.util.xml.Xpp3DomBuilder$InputLocationBuilder)*_
>  
> {noformat}
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: void execute()> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: void 
> writeFeatures(java.io.PrintStream)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: java.lang.String 
> getVersionOrRange(java.lang.Object,java.lang.Object)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: 
> org.apache.maven.project.MavenProject resolveProject(java.lang.Object)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(org.apache.maven.artifact.Artifact,org.apache.maven.project.ProjectBuildingRequest)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(org.apache.maven.artifact.Artifact,boolean,org.apache.maven.project.ProjectBuildingRequest)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(java.io.File,org.apache.maven.model.building.ModelSource,org.apache.maven.project.DefaultProjectBuilder$InternalConfig)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelBuilder: 
> org.apache.maven.model.building.ModelBuildingResult 
> build(org.apache.maven.model.building.ModelBuildingRequest)> 
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelBuilder: 
> org.apache.maven.model.Model 
> readModel(org.apache.maven.model.building.ModelSource,java.io.File,org.apache.maven.model.building.ModelBuildingRequest,org.apache.maven.model.building.DefaultModelProblemCollector)>
>  
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelProcessor: 
> org.apache.maven.model.Model read(java.io.InputStream,java.util.Map)> 
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.io.DefaultModelReader: org.apache.maven.model.Model 
> read(java.io.InputStream,java.util.Map)> 
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.io.DefaultModelReader: org.apache.maven.model.Model 
> read(java.io.Reader,boolean,org.apache.maven.model.InputSource)> 
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx: 
> org.apache.maven.model.Model 
> read(java.io.Reader,boolean,org.apache.maven.model.InputSource)> 
> repository\org\apache\maven\maven-model\3.6.3\maven-model-3.6.3.jar
> <org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx: 
> org.apache.maven.model.Model 
> read(org.codehaus.plexus.util.xml.pull.XmlPullParser,boolean,org.apache.maven.model.InputSource)>
>  repository\org\apache\maven\maven-model\3.6.3\maven-model-3.6.3.jar
> <org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx: 
> org.apache.maven.model.Model 
> parseModel(org.codehaus.plexus.util.xml.pull.XmlPullParser,boolean,org.apache.maven.model.InputSource)>
>  repository\org\apache\maven\maven-model\3.6.3\maven-model-3.6.3.jar
> <org.codehaus.plexus.util.xml.Xpp3DomBuilder: 
> org.codehaus.plexus.util.xml.Xpp3Dom 
> build(org.codehaus.plexus.util.xml.pull.XmlPullParser,boolean,org.codehaus.plexus.util.xml.Xpp3DomBuilder$InputLocationBuilder)>{noformat}
> 2. _*org.codehaus.plexus.util.xml.Xpp3Dom: void init 
> (java.lang.String,java.lang.Object)*_
> {noformat}
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: void execute()> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: void 
> writeFeatures(java.io.PrintStream)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: java.lang.String 
> getVersionOrRange(java.lang.Object,java.lang.Object)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.karaf.tooling.features.GenerateDescriptorMojo: 
> org.apache.maven.project.MavenProject resolveProject(java.lang.Object)> 
> karaf\tooling\karaf-maven-plugin\target\classes
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(org.apache.maven.artifact.Artifact,org.apache.maven.project.ProjectBuildingRequest)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(org.apache.maven.artifact.Artifact,boolean,org.apache.maven.project.ProjectBuildingRequest)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.project.DefaultProjectBuilder: 
> org.apache.maven.project.ProjectBuildingResult 
> build(java.io.File,org.apache.maven.model.building.ModelSource,org.apache.maven.project.DefaultProjectBuilder$InternalConfig)>
>  repository\org\apache\maven\maven-core\3.6.3\maven-core-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelBuilder: 
> org.apache.maven.model.building.ModelBuildingResult 
> build(org.apache.maven.model.building.ModelBuildingRequest)> 
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelBuilder: 
> org.apache.maven.model.building.ModelBuildingResult 
> build(org.apache.maven.model.building.ModelBuildingRequest,org.apache.maven.model.building.ModelBuildingResult)>
>  
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.building.DefaultModelBuilder: 
> org.apache.maven.model.building.ModelBuildingResult 
> build(org.apache.maven.model.building.ModelBuildingRequest,org.apache.maven.model.building.ModelBuildingResult,java.util.Collection)>
>  
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.apache.maven.model.plugin.DefaultReportingConverter: void 
> convertReporting(org.apache.maven.model.Model,org.apache.maven.model.building.ModelBuildingRequest,org.apache.maven.model.building.ModelProblemCollector)>
>  
> repository\org\apache\maven\maven-model-builder\3.6.3\maven-model-builder-3.6.3.jar
> <org.codehaus.plexus.util.xml.Xpp3Dom: void 
> <init>(java.lang.String,java.lang.Object)>{noformat}
> The above missing methods are actually referenced by 
> *_karaf\tooling\karaf-maven-plugin_*, which will cause “NoSuchMethodErrors” 
> at runtime.
> Suggested fixing solutions:
> 1. Upgrade dependency *_org.codehaus.plexus:plexus-utils_* from _*3.0.24*_ to 
> _*3.2.0*_.
> Thank you very much for your attention.
> Best regards,
> Dependency tree----
> [INFO] org.apache.karaf.tooling:karaf-maven-plugin:maven-plugin:4.3.0-SNAPSHOT
> [INFO] +- org.apache.maven:maven-core:jar:3.6.3:compile
> [INFO] | +- org.apache.maven:maven-settings:jar:3.6.3:compile
> [INFO] | | \- (org.codehaus.plexus:plexus-utils:jar:3.2.1:compile - omitted 
> for duplicate)
> [INFO] | +- org.apache.maven:maven-settings-builder:jar:3.6.3:compile
> [INFO] | | +- *(org.codehaus.plexus:plexus-utils:jar:3.2.1:compile - omitted 
> for duplicate)*
> [INFO] | | \- org.sonatype.plexus:plexus-sec-dispatcher:jar:1.4:compile
> [INFO] | | \- (org.codehaus.plexus:plexus-utils:jar:1.5.5:compile - omitted 
> for conflict with 3.2.1)
> [INFO] | +- org.apache.maven:maven-repository-metadata:jar:3.6.3:compile
> [INFO] | | \- (org.codehaus.plexus:plexus-utils:jar:3.2.1:compile - omitted 
> for duplicate)
> [INFO] | +- org.apache.maven:maven-model-builder:jar:3.6.3:compile
> [INFO] | | \- (org.codehaus.plexus:plexus-utils:jar:3.2.1:compile - omitted 
> for duplicate)
> [INFO] | \- (org.codehaus.plexus:plexus-utils:jar:3.2.1:compile - omitted for 
> duplicate)
> [INFO] +- *org.codehaus.plexus:plexus-utils:jar:3.0.24:compile*
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to