メインクラスにはsbt run
複数の選択肢があります。
メインクラスを設定したいので、次のように記述しましたbuild.sbt
:
mainClass := Some("aMainClass")
しかし、sbt は次のように失敗します:
build.sbt:1: error: not found: value aMainClass
ファイルでも試してみましたproject/Project.scala
:
import sbt._
class ExecutableProject(info: ProjectInfo) extends DefaultProject(info) {
override def mainClass = Some("aMainClass")
}
エラー :
project/Project.scala:3: not found: type aMainClass
ビルドでメインクラスを設定するにはどうすればいいですか?
ベストアンサー1
メイン クラスはパッケージで完全に修飾されている必要があります。
Compile/mainClass := Some("myPackage.aMainClass")
これは実行に機能し、パッケージ タスクを使用するときにマニフェストに Main-Class を設定します。これらのタスクのメイン クラスは、次のように個別に設定できます。
mainClass in (Compile, run) := Some("myPackage.aMainClass")
mainClass in (Compile, packageBin) := Some("myPackage.anotherMainClass")
注記:
mainClass := Some("myPackage.aMainClass")
何もしません。ビルド ファイルにこれを追加すると、何もしないという警告は表示されません。