Próbuję uzyskać dostęp do zasobu z pliku jar. Zasób znajduje się w tym samym katalogu, w którym znajduje się słoik.Dostęp do zasobu poza słojem ze słoiczka
my-dir:
tester.jar
test.jpg
Próbowałem różnych rzeczy, w tym następujących, ale za każdym razem, gdy strumień wejściowy jest zerowy:
[1]
String path = new File(".").getAbsolutePath();
InputStream inputStream = this.getClass().getResourceAsStream(path.replace("\\.", "\\") + "test.jpg");
[2]
File f = new File(this.getClass().getProtectionDomain().getCodeSource().getLocation().toURI().getPath());
InputStream inputStream = this.getClass().getResourceAsStream(f.getParent() + "test.jpg");
Czy ty daj mi jakieś wskazówki? Dzięki.
'getResourceAsStream' dostaje zasobu ze słoika. https://docs.oracle.com/javase/7/docs/api/java/io/FileInputStream.html – tkausl
"getResourceXXX" załaduje zasoby ze ścieżki klas, potrzebne jest otwarcie pliku jpg jako pliku lub dodanie -dir do ścieżki klas. – folkol
Czy próbowałeś podzielić kod, więc masz przynajmniej pewność, że uzyskasz poprawną ścieżkę do pliku ** .jpg **? –