Файл свойств чтения приложения Scala finagle из пути к классам

У нас есть веб-приложение Scala, использующее Finagle, где мы пытаемся прочитать некоторые файлы из пути к классам. Он работает в среде модульного тестирования, но при сборке и запуске из Intellij Idea мы получаем исключение нулевого указателя, потому что он не может прочитать файл. пробовал разные версии

val s = Thread.currentThread().getContextClassLoader.getResourceAsStream("env.txt")
val parent = Thread.currentThread().getContextClassLoader.getParent()
val s2 = parent.getResourceAsStream("env.txt")
val s3 = this.getClass.getResourceAsStream("env.txt")
val s4 = ClassLoader.getSystemResourceAsStream("env.txt")

Все это терпит неудачу с исключением нулевого указателя, которое, как я интерпретирую, не может найти файлы в пути к классам.

Чтобы запустить собранную банку, я запускаю:

java -classpath temp-conf -jar project-app/target/scala-2.12/cea-app.jar

Кто-то знает?


person dr jerry    schedule 04.10.2018    source источник


Ответы (1)


Документация по сборке Scala sbt;

ПРИМЕЧАНИЕ. Если вы используете параметр -jar для java, он будет игнорировать -cp, поэтому, если у вас несколько файлов JAR, вы должны использовать -cp и передать основной класс: java -cp "jar1.jar:jar2.jar" Main

person dr jerry    schedule 05.10.2018