При двойном щелчке исполняемого файла .jar, расположенного в папке на рабочем столе, java-программа ведет себя иначе, чем при запуске с помощью «java -jar jarfile.jar» из терминала.
При попытке ввода-вывода кажется, что он всегда пытается прочитать данные из домашней папки. Например:
File file = new File("testfile.txt");
Java должен искать этот файл «testfile.txt» в той же папке, что и файл .jar. Однако тестирование показывает, что это на самом деле ищется в /home/user/testfile.txt
Что происходит? Почему это работает из терминала, а не при двойном щелчке файла.