2014-04-12 2 views
1

oneJar를 사용하여 다중 프로젝트 sbt 빌드를 패키징 할 때 프로젝트 종속성이 jar에 번들되지 않습니다. 내 설정은 다음과 같다 :sbt-onejar 및 다중 프로젝트 빌드

foo/build.sbt   (top-level build.sbt) 
foo/src/    (sources of the root project) 
foo/gui/build.sbt  (project 'build' definition) 
foo/gui/src   (sources of the 'gui' project) 

빌드 정의는 다음과 같습니다

// foo/build.sbt 

name := "foo" 

version := "0.0.1" 

scalaVersion := "2.10.4" 

lazy val root = project.in(file(".")) 

lazy val gui = project.in(file("gui")).dependsOn(root) 

[...] 

//foo/gui/build.sbt 

name := "foo-gui" 

seq(com.github.retronym.SbtOneJar.oneJarSettings: _*) 

[...] 

모든 것이 잘 실행 보인다 gui 프로젝트에 oneJar를 호출하지만, root 프로젝트의 클래스가 포함되어 있지 않습니다 jar (라이브러리 종속성은 있지만). 어떤 문제가 있습니까?

답변

0

가벼운 구성을 시도한 적이 없지만 oneJar 설정을 루트 sbt 파일에 넣지 않아야합니까? 근원을 포장하고 남자를 포함시키고 싶습니까?

오늘 처음으로 비슷한 것을 시도하고 oneJar로 시작했지만 전체 sbt 구성을 사용할 때 컴파일러는 설정이 Seq (_)이고 sbt가 단일 설정 또는 이와 비슷한 것을 예상한다고 불평했습니다. 내가 sbt-assembly로 바꿨다.

sbt-assembly가 최근에 업데이트 된 상태에서 sbt-oneJar가 2 년간 업데이트되지 않았습니다. 나는 어느 쪽이 선호되는지 모르겠다. 그러나 나는 능동적 인 도구를 사용하고 싶다.

관련 문제