Sto provando a leggere un file delle proprietà da classpath usando scala. Ma sembra che non funzionerà, è diverso da java. Il seguente frammento di codice 2, uno è java (funzionante), un altro è scala (non funziona). Non capisco qual è la differenza.Leggi il file delle proprietà in classpath usando 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)
Perché non usi [Config] (https://github.com/typesafehub/config)? –
Ottenuto la soluzione, dovrei usare il percorso assoluto qui "/conf/fp.properties", ma non ancora chiaro sul perché il percorso relativo funziona in java ma non in scala – zjffdu