小编Fra*_*aek的帖子

在sbt-assembly上玩Java 2.3.8重复数据删除

问题:为什么它忽略了MergeStrategy.first?

我在Play Framework中使用2.3.8版本做了一个小应用程序.根据官方文档,您可以将该行添加addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.12.0")到plugin.sbt并添加一些(请参阅下面的代码)以使用该activator assembly命令.

这似乎有效,但存在重复数据删除冲突.这与文件ServerWithStop.class奇怪地发生.在build.sbt中,这个类有一个assembleMergeStrategy.这是官方文档的精确副本.

case "play/core/server/ServerWithStop.class" => MergeStrategy.first
case other => (assemblyMergeStrategy in assembly).value(other)
Run Code Online (Sandbox Code Playgroud)

我添加了几行我发现修复spring.tooling重复数据删除(可以在完整的sbt中再次找到).我明白这些原则; 它的哈希SHA-1比较类然后根据行为合并,我明白它不明白如何处理似乎与ServerWithStop.class不同的重复项.

我不明白(因此问题):为什么它忽略了MergeStrategy.first?

-

build.sbt

name := """MovieRequest"""

version := "1.0"

lazy val root = (project in file(".")).enablePlugins(PlayJava)

scalaVersion := "2.11.1"

libraryDependencies ++= Seq(
  javaJdbc,
  javaEbean,
  cache,
  javaWs,
  "mysql" % "mysql-connector-java" % "5.1.35"
)

mainClass in assembly := Some("play.core.server.NettyServer")

fullClasspath in assembly += Attributed.blank(PlayKeys.playPackageAssets.value)

assemblyExcludedJars in assembly <<= (fullClasspath in assembly) map { cp =>
  cp filter …
Run Code Online (Sandbox Code Playgroud)

java playframework playframework-2.0 sbt-assembly

7
推荐指数
0
解决办法
608
查看次数