을 얻는 방법을 설정 값을 다른 프로젝트에서 다중 프로젝트 구축

0

질문

나는 확실하지 않다는 권리의 개념 sbt 워크플로우. 나는 멀티 프로젝트의 구조를 임의 깊이에서 나를 구축.sbt 지금 내가 원하는 작업을 정의를 보여줄 수 있는 나에게 라이브러리 의존성의 프로젝트를 현재 하위에 따라 달라집니다. 또는,일반적인:하는 방법은 없을 얻을 설정 값을 다른 프로젝트가 있습니까?

내가 하려의 목표는 다음과 같다:

val hierarchyDeps = taskKey[Seq[ModuleID]]("")
val hierarchyDepsImpl = Def.task {
  loadedBuild.value.allProjectRefs.flatMap { case (projectRef, resolvedProject) =>
    (projectRef / libraryDependencies).value
  }
}

val cmn = project.in(file("cmn"))
val subA = project.in(file("sub_a")).dependsOn(cmn).settings(hierarchyDeps := hierarchyDepsImpl.value)
val subB = project.in(file("sub_b")).dependsOn(cmn).settings(hierarchyDeps := hierarchyDepsImpl.value)

java.lang.IllegalArgumentException:

java.lang.IllegalArgumentException: Could not find proxy for val projectRef: sbt.ProjectRef in List(value projectRef, value $anonfun, method $anonfun$hierarchyDepsImpl$1, value hierarchyDepsImpl, object $5879c5c8d08c0b0b007a, package <empty>, package <root>) (currentOwner= value hierarchyDepsImpl )
sbt scala
2021-11-24 06:33:05
1

최고의 응답

0

나는 당신이 뭔가를 시도하고 외부의 음악 철학입니다.

를 정의하는 작업이 각 프로젝트에 대해 뭔가 않습니다. 다음에 추가 aggregate 귀하의 루트는 프로젝트의 목록과 함께 모든 하위 프로젝트입니다. 따라서,호출할 때 sbt taskName가 호출됩 taskName 에 대한 모든 하위 프로젝트 aggregate.

또한,당신이 원하는 무엇을 할 수 있으로 수행 다음

sbt "show libraryDependencies"

주어진 정의 aggregate 를 위한 루트는 프로젝트

val root = project.in(file(".")).aggregate(cmn, subA, subB)

2021-11-24 09:35:32

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................