Problem ze ścieżkami po eksporcie do pliku JAR

0

Witam wszystkich, mam problem z ścieżkami po wyeksportowaniu aplikacji jako jar, w InteliJ idea wszystko działa bez problemu, ale gdy próbuje uruchomić jako jar, to ścieżki się gubią.
unknown.pngunknown.png

0

@Rozumek29:

Wywołujesz prawdopodobnie z innego miejsca w strukturze katalogów niż Intellij, dlatego bezwzględna ścieżka nie działa. Czy gdzieś dostarczasz po drodze informacji gdzie w strukturze katalogów ma zaczepić początek tej ścieżki?

A może to ten problem: https://stackoverflow.com/questions/45574665/resource-folder-not-included-when-building-jar-in-intellij ?

2

Jeśli masz te pliki w projekcie w src/main/resources i używasz jakiegoś ogarniętego build toola to powinny one trafić do wynikowego jara. Wtedy powinieneś dobierać się do nich z poziomu classpath a nie file systemu. Tu masz przykłady kopiowania: https://stackoverflow.com/questions/10308221/how-to-copy-file-inside-jar-to-outside-the-jar/44077426

W Twoim przypadku to powinno zadziałać:

FileUtils.copyURLToFile(getClass().getResource("/login.json"), targetFile);
0

jw, musisz wrzucic to do resources a potem odnosić się przez ścieżkę względem czegoś.

0

pliki są w resources, i tak, znajdują się w z budowanym pliku jar, ale chcę żeby tworzyły się w katalogu użytkownika.

0

Okej, dzięki działa, literówka mnie pokonała na początku. a mam jeszcze jedno pytanie, żeby nie tworzyć nowego tematu. Bo teraz muszę mieć plik startowy np .bat, gdzie muszę mieć podaną ścieżkę do biblioteki "javafx" tj.
java --module-path D:\API's\javafx-sdk-15.0.1\lib --add-modules javafx.controls,javafx.fxml -jar InstalingBot_V3.jar
. Jest jakiś sposób żeby to ominąć ?

1

Jedynie jeśli JRE użytkownika który uruchamia Twojego JARa ma w sobie JavaFX. Najnowsze JRE tego nie mają, więc masz opcję albo stworzenia własnego image JRE z użyciem narzędzia jlink i udostępniania go razem z JARem albo zbudowanie fat JARa który będzie miał wszystkie potrzebne biblioteki w sobie (tutaj już potrzebny Maven albo Gradle). Sam z JavąFX nie pracowałem wiele lat ale tutaj chyba opisują co i jak: https://openjfx.io/openjfx-docs/#modular

1 użytkowników online, w tym zalogowanych: 0, gości: 1