【问题标题】:sbt exclude artifact with 'exclude'sbt 使用“排除”排除工件
【发布时间】:2017-12-16 11:30:09
【问题描述】:

我希望在 build.scala 中使用 sbt 模式从 jar 中排除工件。我看过一些帖子,但仍然没有头绪。

  [error] deduplicate: different file contents found in the following:
  [error] /home/me/.ivy2/cache/com.datastax.spark/spark-cassandra-connector_2.10/jars/spark-cassandra-connector_2.10-2.0.3.jar:org/objectweb/asm/signature/SignatureWriter.class
  [error] /home/me/.ivy2/cache/org.ow2.asm/asm/jars/asm-5.0.4.jar:org/objectweb/asm/signature/SignatureWriter.class
  [error] deduplicate: different file contents found in the following:
  [error] /home/me/.ivy2/cache/com.datastax.spark/spark-cassandra-connector_2.10/jars/spark-cassandra-connector_2.10-2.0.3.jar:org/objectweb/asm/signature/SignatureVisitor.class
  [error] /home/me/.ivy2/cache/org.ow2.asm/asm/jars/asm-5.0.4.jar:org/objectweb/asm/signature/SignatureVisitor.class

我想排除org/objectweb/asm

我累了

libraryDependencies ++= Seq(
...
"com.datastax.spark"  %% "spark-cassandra-connector"  % "2.0.3"  exclude("org.objectweb", "asm"), 
...)

【问题讨论】:

    标签: scala sbt sbt-assembly


    【解决方案1】:

    你应该这样做

    libraryDependencies ++= Seq(
    ...
    "com.datastax.spark"  %% "spark-cassandra-connector"  % "2.0.3"  exclude("org.objectweb.asm", "org.objectweb.asm"), 
    ...)
    

    你也可以这样做

    libraryDependencies ++= Seq(
    ...
    "com.datastax.spark"  %% "spark-cassandra-connector"  % "2.0.3", 
    ...).map(_.exclude("org.objectweb.asm", "org.objectweb.asm"))
    

    如果你使用的是 sbt 0.13.8 及更高版本,那么你可以这样做

    libraryDependencies ++= Seq(
    ...
    "com.datastax.spark"  %% "spark-cassandra-connector"  % "2.0.3", 
    ...)
    
    excludeDependencies += "org.objectweb.asm" % "org.objectweb.asm"
    

    【讨论】:

    • 规则是什么?为什么"org.objectweb.asm" 两次?
    • reload,update,assembly之后还是一样的问题
    • 我猜你要排除的依赖是mvnrepository.com/artifact/org.objectweb.asm/org.objectweb.asm/…。不是吗?所有方法都试过了吗?
    • 我只想从一个工件中排除 org.objectweb.asm,让它成为 spark-cassandra-connector 并将其保存在另一个 org.ow2.asm 中,我认为其他两种方法将完全删除 org.objectweb.asm。我错了吗?
    猜你喜欢
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 2011-12-10
    • 2013-12-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多