Ich versuche, eine Eigenschaftendatei aus Klassenpfad mit Hilfe von Scala zu lesen. Aber es sieht so aus, als würde es nicht funktionieren, es ist anders als Java. Das folgende 2 Code-Snippet, eines ist Java (funktioniert), ein anderes ist Scala (funktioniert nicht). Ich verstehe nicht, was der Unterschied ist.Read Eigenschaftendatei unter Klassenpfad mit Hilfe von Scala
// working
BufferedReader reader = new BufferedReader(new InputStreamReader(
Test.class.getResourceAsStream("conf/fp.properties")));
// not working
val reader = new BufferedReader(new InputStreamReader(
getClass.getResourceAsStream("conf/fp.properties")));
Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf$.main(FPConf.scala:31)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf.main(FPConf.scala)
Warum verwenden Sie nicht [Config] (https://github.com/typesafehub/config)? –
Die Lösung, ich sollte absoluten Pfad hier "/conf/fp.properties" verwenden, aber immer noch nicht klar, warum der relative Pfad in Java, aber nicht in Scala – zjffdu