SBTで生成するwarファイル名

SBTではsbt packageを実行するとデフォルトで以下のようなファイル名でwarファイル(やjarファイル)が作成されます。

プロジェクト名_Scalaのバージョン-アプリのバージョン.war

ライブラリとして使う場合はよいのですが、warファイルの場合はアプリのコンテキストパスにも関わるのでwarファイル名にバージョン番号をつけたくないこともあると思います。そんな場合はプロジェクト定義ファイル(project/build/LiftProject.scalaとか)で以下のようにartifactBaseNameをオーバーライドしてあげればいいみたい。

import sbt._

class LiftProject(info: ProjectInfo) extends DefaultWebProject(info) {
  ...
  override def artifactBaseName: String = projectName.get.get
}

jarファイル名だけカスタマイズするならdefaultJarName、warファイルだけカスタマイズするならdefaultWarNameをオーバーライドするだけでもよいかもしれません。