2015-09-15 3 views
1

Дано:Настройка свойств конфигурации для доступа в РЕПЛ

SRC/тест/Scala/нетто/Main.scala

package net 

import com.typesafe.config.ConfigFactory 

object Main extends App { 
    override def main(args: Array[String]) { 
     val bar = ConfigFactory.load().getString("app.bar") 
     val bippy = ConfigFactory.load().getString("app.bippy") 
     println(s"bar: $bar | bippy : $bippy") 
    } 
} 

SRC/тест/ресурсы/application.conf

app { 
    bar = ${?BAR} 
    bippy = ${?BIPPY} 
} 

Я попытался установить переменные окружения BAR и BIPPY в sbt:

>set envVars := Map("BAR" -> "bar!", "BIPPY" -> "bippy!")

Затем я открыл REPL в тестовом режиме:

>test:console

scala> import net.Main 
import net.Main 

scala> Main.main(Array()) 
com.typesafe.config.ConfigException$Missing: No configuration setting 
    found for key 'app.bar' 

Как я могу установить эти свойства для РЕПЛ?

ответ

1

Пройди свой файл конфигурации, используя свойство -Dconfig.file системы

[localhost]$ sbt -Dconfig.file=src/test/resources/application.conf 
[info] Loading global plugins from ~/.sbt/0.13/plugins 
[info] Loading project definition from ~/my/project 
[info] Set current project to my-project (in build file:~/my/project/) 
> console 
[info] Starting scala interpreter... 
[info] 
Welcome to Scala version 2.11.6 (OpenJDK 64-Bit Server VM, Java 1.8.0_72-internal). 
Type in expressions to have them evaluated. 
Type :help for more information. 

scala> import com.typesafe.config._ 
import com.typesafe.config._ 

scala> val config = ConfigFactory.load() 
config: com.typesafe.config.Config = Config(SimpleConfigObject({"test": "success"}) 

scala> val value = config.getString("test") 
value: String = test 
Смежные вопросы