sbt.version = 0.13.1
В build.sbt
Я назначаю ключ настройки, вызывая часть кода моего проекта, который, в свою очередь, настраивается через Configafe Config ConfigFactory
. Моя зависимость имеет reference.conf
в корневом банке, а сам мой проект содержит переопределение application.conf
в src/main/resources
.
lib/dependency также является моим кодом, btw.
import com.mylib.Finders
import com.myproj.sbt.Keys._
projKeyColorSetting in Compile := Finders.findColor // this calls ConfigFactory.load
seq(projSettings:_*)
Сборка даже не загружается, потому что она не может найти первый ключ conf, который я пытаюсь ссылаться в моем коде lib.
В моем файле сборки я попытался использовать несколько комбинаций областей видимости и манипуляции с Classpath, но безрезультатно. Я предположил, что jar reference.conf
был бы в пути класса Compile
scope, но он не работает, как я ожидаю.
Я провел большую часть вчерашней работы над документацией SBT по Classpath, Scopes, Keys, Tasks и ResourceGenerators. Я намерен выполнить собственный плагин, который полагается на параметр projKeyColorSetting
в build.sbt
следующим образом:
lazy val projSettings = inConfig(Compile) {
Seq(
resourceGenerators in Compile <+= Def.task {
val fileCreated = createColorFile(projKeyColorSetting.value)
Seq(fileCreated)
}
)
}