DEV Community

Cover image for Usando uma versão específica do Java Runtime Environment no Manjaro
Thiago Adomaitis
Thiago Adomaitis

Posted on

Usando uma versão específica do Java Runtime Environment no Manjaro

Há algum tempo que tenho utilizado o Manjaro como minha distro. Devido aos últimos trabalhos principalmente com servidores e roteadores, fazia tempo que não utilizava banco de dados. Até que hoje, ao tentar executar o DBeaver, obtive a seguinte mensagem:

Print de uma mensagem de erro que diz: 'An error has occurred. See the log  file /home/tadomaitis/.eclipse/-org.jkiss.dbeaver.product_7.3.2_1078795723_linux_gtk_x86_64/configuration/1612351910236.log.

O log informava que o DBeaver não conseguiu encontrar a versão necessária do Java para executar, neste caso, a versão 11. Acontece que tenho mais de uma versão, e a versão default é a que eu uso para o Android Studio.

Você pode verificar as versões instaladas com o comando 'archlinux java status'

Alt Text

Como podem ver, embora eu tenha a versão 11 instalada, a versão 8 é a default. Logo, eu precisa de alguma forma indicar para o sistema que ao executar o DBeaver fosse usada a versão 11.

A Arch Wiki tem um tutorial neste link, mas pode ser um pouco mais difícil para quem nunca fez isso antes.

Primeiramente, use o comando whereis nome_da_aplicacao para ver qual é o seu binário de inicialização.

Alt Text

No meu caso, aparece o arquivo /usr/bin/dbeaver.bkp pois fiz uma cópia antes de editá-lo. Aconselho fazer o mesmo; provavelmente você precisará do comando sudo para manipular esse arquivo.

sudo cp /usr/bin/dbeaver /usr/bin/dbeaver.bkp
sudo vim /usr/bin/dbeaver
Enter fullscreen mode Exit fullscreen mode

Usei o vim para não sair do terminal, mas você pode usar qualquer editor de texto de sua preferência. Deixe o conteúdo do arquivo /usr/bin/dbeaver como segue:

#!/bin/sh
export PATH="/usr/lib/jvm/java-11-openjdk/bin/:$PATH"
exec /usr/lib/dbeaver/dbeaver "$@"
Enter fullscreen mode Exit fullscreen mode

A primeira linha vai colocar o caminho da Versão da JDK antes do conteúdo da sua variável PATH. Logo, quando o programa requisitar o binário Java, esse local vai ser o primeiro a ser chamado. O padrão do caminho pode mudar (o meu é ligeiramente diferente do exemplo que consta na Arch Wiki), então você deve verificar o caminho correto. A segunda linha chama o binário para ser executado.

E com isso, já é possível executar o DBeaver com a versão 11 e ainda manter a versão 8 como default.

Esse é o meu primeiro texto tanto aqui no dev.to como em qualquer outra plataforma. Aprecio e agradeço quaisquer sugestões de melhorias.

Top comments (0)