Java não reconhecido como aplicativo padrão

3

Acabei de instalar o java de acordo com este artigo , e java -version exibe

java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

update-alternatives --config java 'retorna isso:

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                  Priority   Status
------------------------------------------------------------
  0            /usr/bin/gij-4.6                       1046      auto mode
  1            /usr/bin/gij-4.6                       1046      manual mode
* 2            /usr/local/java/jdk1.7.0_07/bin/java   1         manual mode

Press enter to keep the current choice[*], or type selection number: 

com update-alternatives --config javac (ou javaws ) retornando de forma semelhante.

no entanto, o Java não está listado no menu de aplicativos padrão quando clico em um arquivo .jar e vou para "abrir com o aplicativo".

  • Eu tentei instalar o Java desta forma e na atualização parte de alternativas do comando me retornou:

      

    / etc / alternatives / [java, javac, javaws] está pendurado, será atualizado com a melhor escolha

  • Acabei de confirmar que eu posso usar Java, pois java -jar file.jar funciona.

  • Imaginei que eu o mencionaria, não sei por que não o fiz antes, mas quando clico com o botão direito em um arquivo .jar, o Java 7 run-time nem é listado lá, Parece que o gerenciador de arquivos não está reconhecendo como um programa, mas está lá e funciona ...

CAUSA DO PROBLEMA

Depois de muita experiência e pesquisa, descobri a causa do problema - um arquivo .desktop ausente em /usr/share/applications . Publicamos uma resposta que você pode usar para criar manualmente uma entrada, mas, como foi dito, ela não é recomendada, pois tenho certeza de que há uma maneira melhor de fazer isso.

    
por John 02.09.2012 / 01:48

4 respostas

2

Eu atualizei uma maneira de fazer isso, mas não é a maneira recomendada de criar uma entrada .desktop (tem que haver uma maneira melhor de fazer isso).

1) Abra o Gedit do Terminal com privilégios de root usind gksu gedit

2) Abra um arquivo .desktop de /usr/share/applications e copie-o para um novo arquivo.

3) Edite o nome, comentários e imagem ao seu gosto.

4) Altere o comando para java -jar %u NÃO ESQUEÇA O %u

5) Salvar

6) Clique com o botão direito do mouse no arquivo .jar no nautilus, selecione properties>open with>show all applications e selecione a nova entrada, selecione add ou set as default .

    
por John 02.09.2012 / 20:28
1

Apenas para registro, há uma maneira mais fácil de corrigir isso.

Depois de instalar o OpenJDK Java 7, se você for para /usr/share/applications , já existe um arquivo .desktop para o openjdk, tudo que você precisa fazer é alterar o resultado final

"NoDisplay=true" to "NoDisplay=false"

E ele aparecerá nas listas de programas padrão.

Desculpe colocar o seu post assim.

    
por RedX 15.12.2013 / 19:09
0

Eu também uso esse método e o artigo do wikihow perdeu duas coisas. Não tenho certeza se isso resolverá seu problema, já que eu nunca executo nada clicando duas vezes em .jars, mas vale a pena tentar:

  1. Escraie todos os binários Java (javac, javaw, etc) para o binário java principal no comando update-alternatives --install . Sem fazer isso, apenas o binário java é vinculado a / usr / bin / java, nenhum dos outros são. (Eu acho que o wikihow assume que se eles estão em $ JAVA_HOME e $ JAVA_HOME / bin está no caminho, o sistema irá encontrá-los, mas não tem certeza disso). Isso também torna muito mais fácil a desinstalação, já que você precisa apenas de update-alternatives --remove-all java , e todos os binários escravizados são incluídos automaticamente.

  2. Defina a prioridade como maior, e não menor, do que gij-4.6 e qualquer outra coisa listada, portanto, o sistema usará como padrão isso. Eles definem a prioridade para 1, que é menor / último do que o update-alternatives funciona. O seu precisa ser pelo menos 1047 ou superior. Eu uso 1100.

Eu tenho o script da instalação , tente esta e modifique os locais de diretório para sua configuração (eu uso / opt / java / jdk / 1.7.0_6 em vez de / usr / local / java).

Uma nota - a última linha do script instala as páginas man como /usr/share/man/man.10 . Antes de executar o script, verifique /usr/share/man e certifique-se de que ainda não exista um man.10 . Se houver, altere a linha no script para man.11 ou qualquer que seja o próximo número mais alto.

    
por Kurtosis 02.09.2012 / 16:41
0

Acabei de descobrir: vá para / usr / share / applications e procure o arquivo 'defaults.list'. Abra este arquivo com o gedit ou seu editor e vá para a linha 81, onde diz: application / x-jar = arquivo-roller.desktop e a próxima linha para o java-archive. Altere file-roller.desktop em ambas as linhas para: openjdk-7-java.desktop e salve o arquivo. Da próxima vez que você quiser executar um arquivo .jar, clique duas vezes nele.

    
por Hugo van Wezenbeek 31.07.2013 / 20:09