sv_jan5
sv_jan5

Reputation: 1573

Dependency convergence error with Maven

I am trying to create a REST api server for a NLP library (Illinois NER tagger) using DropWizard. The following is the content of my .pom file:

<repositories>
    <repository>
        <id>sonatype-nexus-snapshots</id>
        <name>Sonatype Nexus Snapshots</name>
        <url>http://oss.sonatype.org/content/repositories/snapshots</url>
    </repository>
    <repository>
        <id>CogcompSoftware</id>
        <name>CogcompSoftware</name>
        <url>http://cogcomp.cs.illinois.edu/m2repo/</url>
    </repository>
</repositories>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.dropwizard</groupId>
            <artifactId>dropwizard-bom</artifactId>
            <version>${project.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>edu.illinois.cs.cogcomp</groupId>
        <artifactId>illinois-ner</artifactId>
        <version>3.0.72</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard</groupId>
        <artifactId>dropwizard-core</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard</groupId>
        <artifactId>dropwizard-http2</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard</groupId>
        <artifactId>dropwizard-hibernate</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>io.dropwizard</groupId>
        <artifactId>dropwizard-metrics-graphite</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <version>1.4.196</version>
    </dependency>
</dependencies>

On adding the dependency tag and repository tag corresponding to Illinois library my code is crashing with following error on mvn package

[INFO] 
[INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce) @ dropwizard-example ---
[WARNING] 
Dependency convergence error for edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72 paths to dependency are:
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:illinois-tokenizer:3.0.72
      +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
      +-edu.illinois.cs.cogcomp:illinois-inference:0.6.0
        +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.51
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
      +-edu.illinois.cs.cogcomp:illinois-inference:0.6.0
        +-edu.illinois.cs.cogcomp:illinois-sl-core:1.0.2
          +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.22
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava-NLP-tools:1.0.1
      +-edu.illinois.cs.cogcomp:illinois-core-utilities:1.2.11

[WARNING] 
Dependency convergence error for edu.illinois.cs.cogcomp:LBJava:1.2.24 paths to dependency are:
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava-NLP-tools:1.0.1
      +-edu.illinois.cs.cogcomp:LBJava:1.1.0

[WARNING] Rule 0: org.apache.maven.plugins.enforcer.DependencyConvergence failed with message:
Failed while enforcing releasability the error(s) are [
Dependency convergence error for edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72 paths to dependency are:
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:illinois-tokenizer:3.0.72
      +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.72
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
      +-edu.illinois.cs.cogcomp:illinois-inference:0.6.0
        +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.51
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
      +-edu.illinois.cs.cogcomp:illinois-inference:0.6.0
        +-edu.illinois.cs.cogcomp:illinois-sl-core:1.0.2
          +-edu.illinois.cs.cogcomp:illinois-core-utilities:3.0.22
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava-NLP-tools:1.0.1
      +-edu.illinois.cs.cogcomp:illinois-core-utilities:1.2.11
, 
Dependency convergence error for edu.illinois.cs.cogcomp:LBJava:1.2.24 paths to dependency are:
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava:1.2.24
and
+-io.dropwizard:dropwizard-example:1.2.0-SNAPSHOT
  +-edu.illinois.cs.cogcomp:illinois-ner:3.0.72
    +-edu.illinois.cs.cogcomp:LBJava-NLP-tools:1.0.1
      +-edu.illinois.cs.cogcomp:LBJava:1.1.0
]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 38.047 s
[INFO] Finished at: 2017-07-31T16:36:33+05:30
[INFO] Final Memory: 27M/1517M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce (enforce) on project dropwizard-example: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

Please help me to resolve this error.

Upvotes: 2

Views: 6266

Answers (1)

J Fabian Meier
J Fabian Meier

Reputation: 35843

To resolve the error, you need to manage the version of the conflicting artifacts in your dependencyManagement section.

For example: To solve the issue for edu.illinois.cs.cogcomp:illinois-core-utilities you need to make an entry like

<dependency>
   <groupId>edu.illinois.cs.cogcomp</groupId>
   <artifactId>illinois-core-utilities</artifactId>
   <version>3.0.72</version>
</dependency>

in your dependencyManagement section.

Upvotes: 4

Related Questions