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

Michał updated MASSEMBLY-887:
-----------------------------
    Description: 
I have found this issue, while migrating a project from Maven to SBT.

To describe the problem I have created an example project with dependencies 
that I found to behave differently, depending on the build tool.

[https://github.com/atais/mvn-sbt-assembly]

 

The only dependencies are (sbt style)
{code:java}
"com.netflix.astyanax" % "astyanax-cassandra" % "3.9.0", 
"org.apache.cassandra" % "cassandra-all" % "3.4",{code}
and what I do not understand is, why {{mvn package}} creates the fat jar 
successfully, while {{sbt assembly}} gives conflicts:
{code:java}
[error] 39 errors were encountered during merge [error] 
java.lang.RuntimeException: deduplicate: different file contents found in the 
following: [error] 
/home/siatkowskim/.ivy2/cache/org.slf4j/jcl-over-slf4j/jars/jcl-over-slf4j-1.7.7.jar:org/apache/commons/logging/<some
 classes> [error] 
/home/siatkowskim/.ivy2/cache/commons-logging/commons-logging/jars/commons-logging-1.1.1.jar:org/apache/commons/logging/<some
 classes> ... [error] 
/home/siatkowskim/.ivy2/cache/com.github.stephenc.high-scale-lib/high-scale-lib/jars/high-scale-lib-1.1.2.jar:org/cliffc/high_scale_lib/<some
 classes> [error] 
/home/siatkowskim/.ivy2/cache/com.boundary/high-scale-lib/jars/high-scale-lib-1.0.6.jar:org/cliffc/high_scale_lib/<some
 classes> ...{code}
*{{So I wonder, how come this plugin overcomes this conflicts?}}*

{{I have also created a SO question, if one would like to earn some points: 
[https://stackoverflow.com/questions/50249818/why-maven-assembly-works-when-sbt-assembly-find-conflicts]}}

{{ }}

  was:
I have found this issue, while migrating a project from Maven to SBT.

To describe the problem I have created an example project with dependencies 
that I found to behave differently, depending on the build tool.

[https://github.com/atais/mvn-sbt-assembly]

 

The only dependencies are (sbt style)
{code:java}
"com.netflix.astyanax" % "astyanax-cassandra" % "3.9.0", "org.apache.cassandra" 
% "cassandra-all" % "3.4",{code}
and what I do not understand is, why {{mvn package}} creates the fat jar 
successfully, while {{sbt assembly}} gives conflicts:
{code:java}
[error] 39 errors were encountered during merge [error] 
java.lang.RuntimeException: deduplicate: different file contents found in the 
following: [error] 
/home/siatkowskim/.ivy2/cache/org.slf4j/jcl-over-slf4j/jars/jcl-over-slf4j-1.7.7.jar:org/apache/commons/logging/<some
 classes> [error] 
/home/siatkowskim/.ivy2/cache/commons-logging/commons-logging/jars/commons-logging-1.1.1.jar:org/apache/commons/logging/<some
 classes> ... [error] 
/home/siatkowskim/.ivy2/cache/com.github.stephenc.high-scale-lib/high-scale-lib/jars/high-scale-lib-1.1.2.jar:org/cliffc/high_scale_lib/<some
 classes> [error] 
/home/siatkowskim/.ivy2/cache/com.boundary/high-scale-lib/jars/high-scale-lib-1.0.6.jar:org/cliffc/high_scale_lib/<some
 classes> ...{code}
*{{So I wonder, how come this plugin overcomes this conflicts?}}*

{{I have also created a SO question, if one would like to earn some points: 
[https://stackoverflow.com/questions/50249818/why-maven-assembly-works-when-sbt-assembly-find-conflicts]}}

{{ }}


> Magically merged conflicting classpath 
> ---------------------------------------
>
>                 Key: MASSEMBLY-887
>                 URL: https://issues.apache.org/jira/browse/MASSEMBLY-887
>             Project: Maven Assembly Plugin
>          Issue Type: Bug
>          Components: component descriptor
>    Affects Versions: 3.1.0
>            Reporter: Michał
>            Priority: Major
>
> I have found this issue, while migrating a project from Maven to SBT.
> To describe the problem I have created an example project with dependencies 
> that I found to behave differently, depending on the build tool.
> [https://github.com/atais/mvn-sbt-assembly]
>  
> The only dependencies are (sbt style)
> {code:java}
> "com.netflix.astyanax" % "astyanax-cassandra" % "3.9.0", 
> "org.apache.cassandra" % "cassandra-all" % "3.4",{code}
> and what I do not understand is, why {{mvn package}} creates the fat jar 
> successfully, while {{sbt assembly}} gives conflicts:
> {code:java}
> [error] 39 errors were encountered during merge [error] 
> java.lang.RuntimeException: deduplicate: different file contents found in the 
> following: [error] 
> /home/siatkowskim/.ivy2/cache/org.slf4j/jcl-over-slf4j/jars/jcl-over-slf4j-1.7.7.jar:org/apache/commons/logging/<some
>  classes> [error] 
> /home/siatkowskim/.ivy2/cache/commons-logging/commons-logging/jars/commons-logging-1.1.1.jar:org/apache/commons/logging/<some
>  classes> ... [error] 
> /home/siatkowskim/.ivy2/cache/com.github.stephenc.high-scale-lib/high-scale-lib/jars/high-scale-lib-1.1.2.jar:org/cliffc/high_scale_lib/<some
>  classes> [error] 
> /home/siatkowskim/.ivy2/cache/com.boundary/high-scale-lib/jars/high-scale-lib-1.0.6.jar:org/cliffc/high_scale_lib/<some
>  classes> ...{code}
> *{{So I wonder, how come this plugin overcomes this conflicts?}}*
> {{I have also created a SO question, if one would like to earn some points: 
> [https://stackoverflow.com/questions/50249818/why-maven-assembly-works-when-sbt-assembly-find-conflicts]}}
> {{ }}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to