【问题标题】:Merge Strategy not behaving as expected合并策略未按预期运行
【发布时间】:2012-11-14 05:01:36
【问题描述】:

在 build.scala 我有以下内容:

mergeStrategy <<= (mergeStrategy in assembly) {(old) => {
  case PathList("javax", "servlet",  "resources", xs @ _*) => MergeStrategy.first
  case x => old(x)
}}

但是,当我运行 assembly 时,我看到了:

[info] Merging 'javax/servlet/resources/web-app_2_2.dtd' with strategy 'deduplicate'

表明它使用的是“去重”策略,而不是“第一”策略。这会产生以下错误:

[error] {file:/home/dan/tesla/}tesla-appengine/*:assembly: deduplicate: different file contents found in the following:
[error] /home/dan/.ivy2/cache/com.google.appengine/appengine-tools-sdk/jars/appengine-tools-sdk-1.7.3.jar:javax/servlet/resources/web-app_2_2.dtd
[error] /home/dan/.ivy2/cache/javax.servlet/servlet-api/jars/servlet-api-2.5.jar:javax/servlet/resources/web-app_2_2.dtd

【问题讨论】:

    标签: sbt sbt-assembly


    【解决方案1】:

    我没有在适当的范围内应用此设置。我需要设置

    mergeStrategy in assembly <<= ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-30
      • 2021-07-09
      • 2020-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-03
      相关资源
      最近更新 更多