简体   繁体   English

SBT-组装(Scala-Neo4j),如何处理重复数据删除问题?

[英]SBT - Assembly (Scala - Neo4j), How to deal with this deduplicate issue?

just trying to generate a Jar with sbt-assembly and I'm still trapped with this: 只是试图生成一个带有sbt-assembly的Jar,而我仍然对此感到困惑:

[error] (*:assembly) deduplicate: different file contents found in the following:
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-kernel/jars/neo4j-kernel-1.9.4.jar:META-INF/CHANGES.txt
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-lucene-index/jars/neo4j-lucene-index-1.9.4.jar:META-INF/CHANGES.txt
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-graph-algo/jars/neo4j-graph-algo-1.9.4.jar:META-INF/CHANGES.txt
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-udc/jars/neo4j-udc-1.9.4.jar:META-INF/CHANGES.txt
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-cypher/jars/neo4j-cypher-1.9.4.jar:META-INF/CHANGES.txt
[error] /Users/fsalvador/.ivy2/cache/org.neo4j/neo4j-jmx/jars/neo4j-jmx-1.9.4.jar:META-INF/CHANGES.txt

in my build.sbt I have tried the following: 在我的build.sbt中,我尝试了以下方法:

mergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) => {
    case PathList("ivy2", "cache",  "org.neo4j", xs @ _*) => MergeStrategy.last
    case "CHANGES.txt"     => MergeStrategy.discard
    case x => old(x)
  }
}

And still no joy, tried almost everything. 仍然没有喜悦,几乎尝试了一切。

PathList(...) extractor splits up the path string. PathList(...)提取器拆分路径字符串。 The following should work: 以下应该工作:

mergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) => {
    case PathList("META-INF", "CHANGES.txt") => MergeStrategy.discard
    case x => old(x)
  }
}

Did you try a simpler: 您是否尝试过更简单的方法:

mergeStrategy in assembly := mergeStrategy.first

Update, don't do this, please see comments 更新,请勿执行此操作,请查看评论

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM