Итак, код, который я запускаю, выглядит следующим образом:
import java.awt.*;
import java.io.File;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
new Thread(()->{
try
{
Desktop.getDesktop().open(new File(Main.class.getResource("/blank.jpg").getPath()));
} catch (IOException e)
{
System.out.println("oopse");
}
}).start();
}
}
каждый раз, когда он вызывает Desktop.getDesktop().open(новый файл(путь к файлу)); и путь к файлу заканчивается на .jpg, по какой-то причине файл открывается в firefox вместо Gwenview.
Я хочу, чтобы это приложение было кроссплатформенным, и открытие файлов-огромная часть моего приложения. Мне это нужно, чтобы уважать пользовательские настройки для программ открытия по умолчанию. Как мне это закодировать, чтобы это было удобно для Windows, OsX и Ubuntu, как gnome, так и plasma?
Вот полностью выполнимый пример: https://github.com/CodingSorcerer/Desktop-Open-Test