2013-11-21 25 views
10

の実行タスク:SBT:私は次のプロジェクト構造を持つサブプロジェクト

lazy val root = project.aggregate(rest,backend) 
lazy val rest = project 
lazy val backend = project 

私は親から「実行」タスクを実行すると、私はそのmainを持っている「バックエンド」プロジェクトから特定のクラスをしたいですメソッドが実行されます。どうすればこれを達成できますか?

答えて

5
lazy val root = project.aggregate(rest,backend).dependsOn(rest,backend) //<- don't forget dependsOn 
lazy val rest = project 
lazy val backend = project.settings(mainClass in (Compile, run) := Some("fully.qualified.path.to.MainClass")) 

run in Compile <<= (run in Compile in backend) 
+0

ルートから 'backend'への' dependsOn'が重要なのはなぜですか?最後の行は私にとってはうまくいくようです(つまり 'sbt clean'の後に' sbt run'が正しいことをします)。 – akauppi

関連する問題