Portanto, o código eu estou usando é da seguinte maneira:
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();
}
}
toda vez que ele chama de Trabalho.getDesktop().open(novo Arquivo(filePath)); e o caminho do arquivo termina .jpg, por algum motivo, o arquivo é aberto no firefox, em vez de o Gwenview.
Eu quero esse aplicativo para ser multiplataforma, e a abertura de arquivos é uma parte enorme da minha aplicação. Eu preciso respeita as preferências do usuário padrão para a abertura de programas. Como faço esse código então é amigável para Windows, OsX, e o Ubuntu, tanto o gnome e o plasma?
Aqui está uma totalmente runnable exemplo: https://github.com/CodingSorcerer/Desktop-Open-Test