2012-06-21 1 views
2

우리는 모듈을 통해 확장 가능한 응용 프로그램을 보유하고 있습니다. (다중 프로젝트) SBT 빌드는 배포하기 쉬운 배포 아티팩트를 생성합니다.SBT를 사용하여 사용자 지정 클라이언트 빌드 관리

클라이언트의 일부 사용자 지정 배포에서는 특정 모듈이 빌드의 일부가되어야합니다 (즉, 추가 종속성 집합). 이러한 사용자 정의 빌드를 만드는 가장 좋은 방법은 무엇일까? 즉 기본 빌드를 확장하고 그 종속성을 추가하는 방법이 있을까요?

지금 나는 다음과 같은 접근 방식을 생각하고 :

  • 하는 주요 응용 프로그램을 추출, 마술을 추가, ZIP 파일을 가져 오기, &는 사용자 지정 빌드에서
  • 를 발표 (우편으로) 포장했다 추가 JAR 종속성을 확인하고 이슈를 다시 압축합니다 (빌드에서 지정된 모든 JAR 종속성에 액세스하는 방법을 모르므로 "마술처럼").

더 우아한 방법이 있습니까?

답변

0

새로운 하위 프로젝트를 기본 하위 프로젝트에 따라 선언하는 것이 더 쉬울 것이라고 생각합니다.

lazy val extra: Project = Project("extra", file("extra")) dependsOn(mainProject) settings(Seq(...)) 

그런 다음 해당 패키지에서 추가 종속성을 선언 할 수 있습니다. 이 추가 프로젝트를 패키지화하면 모든 것이 자동으로 패키지에 포함됩니다.

+0

글쎄, 지금 우리가 가진 것입니다. 하지만 내가 원하는 것은 이러한 개인 서브 프로젝트를 공개 빌드에 공개하지 않는 것입니다. 나는. 필요한 프로젝트를 각각 참조하는 다수의 작은 사용자 정의 빌드를 작성하십시오. –