Я всегда использовал maven и изучаю SBT, но у меня есть проблема: я использую плагин сборки для создания толстой банки, но с этой конфигурацией созданная банка содержит только папку мета-inf и не содержит банку (нет моего src и ни одна из зависимостей jar)
ThisBuild / scalaVersion := "2.12.15"
ThisBuild / organization := "org.me"
ThisBuild / version := "0.1.0-SNAPSHOT"
Global / onChangedBuildSource := ReloadOnSourceChanges
lazy val root = (project in file("."))
.settings(
libraryDependencies += "org.apache.phoenix" % "phoenix-core" % "4.14.0-HBase-1.3",
libraryDependencies += "org.apache.phoenix" % "phoenix-queryserver-client" % "6.0.0",
assembly / assemblyMergeStrategy := (_ => MergeStrategy.first),
assembly / mainClass := Some("org.me.Test"),
assembly / assemblyJarName := "importer.jar"
)
Что я делаю не так?
Чтобы исправить это, я заменил:assembly / assemblyMergeStrategy := (_ => MergeStrategy.first
с
assemblyMergeStrategy in assembly := {
case PathList("META-INF", xs @ _*) => MergeStrategy.discard
case x => MergeStrategy.first
}
Ваш ответ может быть улучшен с помощью дополнительной вспомогательной информации. Пожалуйста, редактировать добавьте дополнительную информацию, например цитаты или документацию, чтобы другие могли подтвердить правильность вашего ответа. Дополнительную информацию о том, как писать хорошие ответы, можно найти в справочном центре.