2012-09-05 3 views
4

내가 가진 여러 하위 프로젝트를 포함하는 SBT 프로젝트, 즉 :SBT는 모든 프로젝트에 대해 작업을 실행

> projects 
[info] In file:/home/me/src/foo/ 
[info]  popen 
[info]  foobar-core 
[info] * foobar-client 
[info]  foobar-db 

이 하위 프로젝트의 각 작업을 실행할 수있는 방법이 있나요? 나는 현재 모든 서브 프로젝트를 거쳐 publish을 수동으로 실행하기 때문에 과 같은 것을 찾고 있는데, 일단 서브 프로젝트가 많아지면 상당히 지루합니다.

저는 관성에서 벗어난 sbt-0.11.2을 사용하고 있지만 도움이된다면 업그레이드 할 의향이 있습니다.

답변

7

다른 모든 프로젝트를 통합하는 프로젝트를 정의 할 수 있습니다. 이 프로젝트에서 실행되는 각 작업은 모든 집계에서 실행됩니다. 다음은 sbt wiki의 예입니다.

import sbt._ 
import Keys._ 

object HelloBuild extends Build { 
    lazy val root = Project(id = "hello", 
          base = file(".")) aggregate(foo, bar) 

    lazy val foo = Project(id = "hello-foo", 
          base = file("foo")) 

    lazy val bar = Project(id = "hello-bar", 
          base = file("bar")) 
} 
+0

감사합니다. 정확하게 내가 찾고 있었던 것이 었습니다. – themel

+0

가이드가 이동 한 후 URL이 수정되었습니다. –

+0

많은 프로젝트가있는 경우 반복됩니다. 빌드에 정의 된 모든 프로젝트를 나열하는 방법이 있습니까? – juanmirocks

관련 문제