環境
sbt 0.13.13
手順
sbt-assemblyを使います。
下記を記載したファイルをprojectフォルダ配下に配置。
project/assembly.sbt
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")
project配下であればsbtファイルの名前は自由。
この状態でsbtコンソールからassemblyコマンドを実行すれば、jarファイルが生成されます。
jarファイル名の指定
標準だとファイル名は"【nameキーの値】-assembly-【versionキーの値】.jar"になる模様。
jarファイル名を変更するには、build.sbtに以下を記載します。
build.sbt
assemblyJarName := "【ファイル名】"
jarファイル出力先の指定
標準だと出力先はtarget/scala.x.xx配下になります。
出力先を変更するには、assemblyOutputPathを指定すれば良い・・・と思いきや、指定しても動作が変わらない?
assemblyJarNameの値で相対パスを指定することが可能なので、それで大抵の場合は解決できるかと思われます。