Ładowanie plików za pomocą ClassLoader

Ten problem już mnie dręczy. Muszę załadować kilka plików w mojej aplikacji java, a jedyny sposób, w jaki do tej pory pracowałem, wygląda tak:

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");
}

Ale to jest brzydkie i straszne. Przez chwilę myślałem, że mam to do roboty:

hsURL = ClassLoader.getSystemResource("helpsets/helpset.hs");

Ale to już nie działa z jakiegoś powodu (musiałem coś zmienić i nie zauważyć. Zwraca wartość null.

Czy powinienem używać getResource () zamiast getSystemResource () (jeśli tak, dlaczego getSystemResource () static, ale nie getResource ())?

Używam eclipse i próbowałem dołączyć folder do ścieżki kompilacji (ścieżka klasy) i nie włączając go, nie wydaje się, aby coś zmieniło.

questionAnswers(2)

yourAnswerToTheQuestion