如何将 MANIFEST.MF 中的 Class-Path 设置为自定义类路径?

gkn*_*uth 0 sbt

我必须在其 MANIFEST.MF 中部署一个具有非常特定类路径的 JAR。我将如何配置 sbt 以便打包的 JAR 具有这个特定的类路径(例如):

.
lib/abc.jar
lib/xyz.jar
../../lib/maven/com/fasterxml/jackson/core/jackson-annotations/2.2.3/jackson-annotations-2.2.3.jar
../../lib/maven/com/fasterxml/jackson/core/jackson-core/2.2.3/jackson-core-2.2.3.jar
../../lib/maven/com/fasterxml/jackson/core/jackson-databind/2.2.3/jackson-databind-2.2.3.jar
../../lib/maven/commons-codec/commons-codec/1.9/commons-codec-1.9.jar
../../lib/maven/commons-io/commons-io/2.4/commons-io-2.4.jar
../../lib/maven/joda-time/joda-time/2.5/joda-time-2.5.jar
../../lib/maven/log4j/log4j/1.2.11/log4j-1.2.11.jar
../../lib/database/SQLServer2008/3.0.1301.101/sqljdbc4.jar
Run Code Online (Sandbox Code Playgroud)

(当然,真正的将包括 Scala。)

Dal*_*and 5

尝试将这样的内容添加到您的构建中:

val classPath = Seq(
  ".",
  "lib/abc.jar",
  "lib/xyz.jar",
  "../../lib/maven/com/fasterxml/jackson/core/jackson-annotations/2.2.3/jackson-annotations-2.2.3.jar",
  "../../lib/maven/com/fasterxml/jackson/core/jackson-core/2.2.3/jackson-core-2.2.3.jar",
  "../../lib/maven/com/fasterxml/jackson/core/jackson-databind/2.2.3/jackson-databind-2.2.3.jar",
  "../../lib/maven/commons-codec/commons-codec/1.9/commons-codec-1.9.jar",
  "../../lib/maven/commons-io/commons-io/2.4/commons-io-2.4.jar",
  "../../lib/maven/joda-time/joda-time/2.5/joda-time-2.5.jar",
  "../../lib/maven/log4j/log4j/1.2.11/log4j-1.2.11.jar",
  "../../lib/database/SQLServer2008/3.0.1301.101/sqljdbc4.jar"
)

packageOptions += Package.ManifestAttributes(
  "Class-Path" -> classPath.mkString(" ")
)
Run Code Online (Sandbox Code Playgroud)