Здравствуйте, Аноним, Вы писали:
А>Собственно как получить каталог из которого запущена программа. А>Под виндой System.getProperty("user.dir") нормально возвращает директорию из которой запущен программа. А>А как этот каталог получить под Linux, мне он возвращает папку пользователя(это в случае когда А> запуск jar'а прописан для оболочки). Если под консолью запускать предварительно перейдя в каталог программы то тоже все нормально. А>А как это сделать просто по кликам на jar?
Думаю, что под Linux'ом System.getProperty("user.dir") тоже возвращает текущую директорию. Другое дело, что текущая директория — это вещь иногда совершенно не предсказуемая (какая, например, текущая директория у апплета?). Чтобы текущая диретокрия была той, в которой находится jar, возможно, необходимо что-то подкрутить в оболочке (что там GNOME или KDE).
Как вариант, это смотреть не на текущую директорию, а именно ту, в которой находится jar. Подсказки:
Class.getProtectionDomain().getCodeSource().getLocation() или Class.getResource().