Кодирам P2P приложение в Scala, което работи на Play 2.2.1 с Akka 2.2.3. Когато разпределя моя проект в Play, my project/conf/reference.conf
ще бъде включен в dist zip. Това е добре.
След това извлякох ZIP файла и презаписах conf/reference.conf
, за да тествам за локализиране за потребителска среда. Моето приложение обаче не работи с конфигурация на reference.conf; Все още използва настройките по подразбиране. (Akka използва настройките по подразбиране.)
Например conf/reference.conf:
p2pakka.akka.remote.netty.tcp.hostname="foobar.local"
p2pakka.akka.remote.netty.tcp.port=44444
Действително поведение:
p2pakka.akka.remote.netty.tcp.hostname="127.0.0.1"
p2pakka.akka.remote.netty.tcp.port=22223
В моя код:
val config = ConfigFactory.load()
val customConf = config.getConfig("p2pakka").withFallback({
println("fallbacking");
config
})
val system = ActorSystem("foobar", ConfigFactory.load(customConf))
// still using default settings.
Що се отнася до използването на play run
, conf/reference.conf
работи точно както написах.
Има ли грешка в моя код? conf/reference.conf
в zip невалиден ли е?
Бих искал да знам как да приложа промяна в conf/reference.conf
от потребител, след dist
ed от разработчика. Потърсих в Google за този проблем, но не можах да намеря отговор.
Не съм роден английски, така че моля да ме извините за лошото ми владеене на английски.