Carregando arquivos com o ClassLoader
Este problema tem me incomodado por um tempo. Eu tenho que carregar alguns arquivos no meu aplicativo java, e a única maneira que eu comecei a trabalhar até agora parece com isso:
URL hsURL;
if(System.getProperty("os.name").toLowerCase().contains("windows")) {
hsURL = new URL("file:/" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}
else {
hsURL = new URL("file://" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}
Mas isso é feio e terrível. Por um tempo eu pensei que tinha esse trabalho:
hsURL = ClassLoader.getSystemResource("helpsets/helpset.hs");
Mas isso não funciona mais por algum motivo (eu devo ter mudado alguma coisa e não percebido. Ela retorna null.
Devo estar usando getResource () em vez de getSystemResource () (em caso afirmativo, por que é getSystemResource () estático, mas não getResource ())?
Eu estou usando o eclipse e tentei incluir a pasta no caminho de compilação (classpath) e não incluí-lo, não parece fazer a diferença.