Fiz um .jar executável, roda no Windows, mas o Ubuntu não o executa?

1

Eu fiz o seguinte arquivo pequeno com o Eclipse, usando a biblioteca SWT:

//all the imports
public class classtest {
    public static void main(String[] args) {

        Display display = new Display();
        Shell shell = new Shell(display);
        shell.setSize(300, 200);
        shell.setText("Button Example");
        //shell.setLayout(new RowLayout());

        Button button = new Button(shell, SWT.PUSH);


        button.setLocation(20,20);
        button.setSize(new Point(70,30));        //new point seems to be optional?
        button.setText("Buttontje ");     

        shell.open ();


        while (!shell.isDisposed()) {
            if (!display.readAndDispatch())
            display.sleep();
        }
        display.dispose();
    }
}

O .jar que eu criei funciona perfeitamente no Windows.

Agora eu instalei o Java no Ubuntu usando os seguintes comandos (de link ):

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

O Java parecia estar bem instalado. Eu corro o arquivo, mas nada acontece. Um outro programa meu, no entanto, usando apenas JButtons e nenhuma biblioteca SWT, funciona.

Preciso instalar a biblioteca SWT na plataforma de destino para que ela funcione? Mas como eu instalaria isso? Eu pensei que a biblioteca SWT seria incluída no .jar para que ele executasse o layout SWT em todas as plataformas, contanto que o java fosse instalado.

    
por Bart 05.12.2013 / 21:27

4 respostas

0

Clique com o botão direito do mouse nas propriedades .jar e clique em e, em seguida, clique em permissões e clique em permitir a execução do arquivo como programa

    
por Steven Wyant 05.12.2013 / 21:56
0

Executando arquivos .jar no linux O Ubuntu é um pouco diferente de como no windows, aqui quando você simplesmente clica duas vezes no arquivo ele irá abri-lo com o arquivo, então tente abri-lo com java. Se isso não resolve o seu problema, verifique se você instalou o java corretamente -

java -version
javac
javaws

Se não houver erros, vá para a próxima parte, caso contrário, instale-o novamente depois de remover completamente

Para tornar a execução padrão por java, clique com o botão direito em qualquer arquivo .jar e selecione propriedades. Clique na guia "Abrir com". selecione Sun 'Oracle 7 Runtime'. E clique em fechar para salvar as configurações.

    
por Sukupa91 05.12.2013 / 23:05
0

Você precisa ligar assim:

java -jar yourfilehere
    
por animaletdesequia 06.12.2013 / 01:19
0

Encontrei o mesmo problema.

Esta resposta está atrasada há 4 anos, mas sugiro abrir um terminal no diretório em que seu arquivo .jar reside:

java -jar "jarfilehere.jar"

Fazendo isso em um terminal, você provavelmente terá erros sobre o motivo pelo qual não foi executado.

(No meu caso, as classes JFX não estavam presentes)

    
por SteamPlayer 12.07.2017 / 20:28