Java - определить общий путь для каждого пользователя, который запускает мое приложение - PullRequest
0 голосов
/ 07 сентября 2018

Я создал приложение (Вы можете найти всю вещь здесь, чтобы увидеть проблему самостоятельно: https://github.com/Tressos-Aristomenis/Snakes-And-Ladders-JavaFX-from-scratch!), И я поставил немного фоновой музыки.

Я на самом деле использую папку с названием "музыка", которая содержит все треки. В моем компьютере "music" находится по адресу: D: \ MyWork \ PersonalStuff \ Programming \ Refactored_SnakesAndLadders_v2 \ Refactored_SnakesAndLadders_v2 \ src \ music .

Если я использую этот путь на моем ПК , чтобы указать, где находятся дорожки, он работает нормально. Очевидно, что это не характерно для любого другого ПК. Я обнаружил, что " System.getProperty (" user.dir ") " указывает местоположение, откуда был запущен Java.

Использование пути: private final String TRACKS_PATH = System.getProperty("user.dir") + "\\music"; на самом деле работает и на моем ПК более динамично. Теперь папку «музыка» можно найти независимо от того, где находится проект.

ПРОБЛЕМА

Некоторые мои друзья скачали файл .jar, даже весь код + jar, и приложение не запущено; это означает, что NullPointerException в строках:

TRACKS_DIRECTORY = new File(TRACKS_PATH);
TRACKLIST = TRACKS_DIRECTORY.listFiles();

TRACKLIST - это массив файлов. Очевидно, что TRACKS_DIRECTORY является нулевым, поскольку путь неверен.

Любая помощь о том, как определить общий путь для каждого пользователя, который запускает мое приложение?

...