System.getProperty("user.dir");
Приведенный выше метод получает рабочий каталог пользователя при запуске приложения. Это нормально, если приложение запускается с помощью сценария или ярлыка, который гарантирует, что это так.
Однако, если приложение запускается откуда-то еще (вполне возможно, если используется командная строка), возвращаемое значение будет там, где был пользователь при запуске приложения.
Более надежным способом является обработка каталога установки приложения с использованием ClassLoaders .