(앞으로 긴 질문, 간단한 tl, 아래쪽에 dr). 어떤으로, "0.1 : MYLIB com.example"-두 개의 ScalaJS SBT 프로젝트간에 DependsOn 사용
내가 SBT와 내장이 개 ScalaJS 프로젝트가 다음 디렉토리 구조
root/build.sbt
root/myapp/build.sbt
root/myapp/jvm/
root/myapp/js/
root/myapp/shared/
root/mylib/build.sbt
root/mylib/jvm
root/mylib/js
root/mylib/shared
lib
에서 "MyApp를"과 "MYLIB가"라는 이슈를 수출 myapp
에 대한 libraryDependency로 사용되었습니다.
myapp 및 mylib는 별도의 저장소에 있으며 자체 빌드 파일을 포함하며 완전히 개별적으로 빌드 할 수 있어야합니다. 즉, 개별 빌드 구성을 포함해야합니다.
생산시에는 별도로 을 작성하여 myapp
을 별도로 제작하기 전에 메이븐 인공물로 게시해야합니다.
그러나 개발 중에 각 변경 후에 publishLocal
을 사용할 필요없이 둘을 병렬로 개발할 수 있도록 이들을 부모 SBT 프로젝트에 병합 할 수 있기를 바랍니다. appJVM
, appJS
, libJVM
및 libJS
- 전통 (안 scalajs)에서
$ROOT/build.sbt:
lazy val mylib = project
lazy val myapp = project.dependsOn(mylib)
그러나 ScalaJS, 우리는 실제로 각 모듈 내부에 두 개의 프로젝트가 매우 쉬울 것이다. 따라서 위의 구성은 집합 루트 프로젝트 만 찾고 실제로
dependsOn
구성을 실제 JVM 및 JS 프로젝트에 적용하지 않습니다.
이상적으로는 불행하게도이 다음
lazy val mylibJVM = project
lazy val myappJVM = project.dependsOn(mylibJVM)
lazy val mylibJS = project
lazy val myappJS = project.dependsOn(myappJS)
처럼 뭔가를 할 수 있도록하고 싶습니다
(각 build.sbt 즉 MyApp를하고 MYLIB 두 개의 프로젝트, 집계 루트 프로젝트가 포함) 단지 서브 프로젝트 자체를 임포트하는 대신 루트 내에 새로운 프로젝트를 생성합니다.
또한lazy val mylibJVM = project.in(file("mylib/jvm"))
(예) 경로의 다양한 조합을 시도했다 그러나 이것은 궁극적으로 내가 같은 대항 실행 계속 mylib
에 build.sbt 파일의 구성을 볼 수 없습니다
문제 - 기존 다중 프로젝트 SBT 프로젝트를 부모 sbt 파일로 가져올 때 루트 프로젝트를 가져 오지만 dependsOn
구성을 추가 할 수있는 방식으로 기존 다중 모듈 SBT 파일에서 하위 프로젝트를 가져 오는 방법을 제공하지 않습니다. 그것에.
TL, 나는 정의 된 여러 프로젝트와
root/mylib/build.sbt
및
정의 된 여러 프로젝트와
root/myapp/build.sbt
이있는 경우 박사 대신 root/build.sbt
로 개별 하위 프로젝트를 가져 오는 것이 가능 하위 프로젝트의 루트 프로젝트?
즉 다중 프로젝트 빌드의 두 레이어를 가질 수 있습니까?
내 scalajs와 SBT의 지식은 정확히 세 내가 JVM과 JS 사이의 분할이 scalajs 프로젝트, 또는 무엇을 의미에 대한하지만 내 플러그인 버전 0.6.4 도입되었을 때 모르는 이 작업을 수행 할 것입니다 : 1)이 부분적 경우에 도움이 알려줘이 에 따라 2) 응용 프로그램의 fastOptJs 작업을 확인 앱에 lib 디렉토리에서 lib 디렉토리에 복사 출력의 fastOptJs 작업에 따라 복사기 작업을 만들어 더 많은 것을 도울 수 있습니다. – 0fnt