Introdução
Este tutorial mostrará como instalar o Java nas versões atuais das distribuições Linux baseadas em RPM: Red Hat Enterprise Linux, CentOS, Fedora e Rocky Linux. O Java é uma linguagem de programação e plataforma de software popular que permite executar muitas aplicações do lado do servidor.
Este tutorial abrange a instalação da versão mais recente e padrão do Java, bem como a seleção manual de versões mais antigas para instalação e a alternância entre várias versões em seu ambiente conforme necessário.
Pré-requisitos
Antes de começar este guia, você deve ter um usuário regular, não-root, com privilégios sudo
configurados no seu servidor – este é o usuário com o qual você deve fazer login no seu servidor. Você pode aprender como configurar uma conta de usuário regular seguindo as etapas em nosso guia de configuração inicial do servidor para Rocky Linux 8.
Passo 1 – Instalando o OpenJDK
Existem três edições diferentes da Plataforma Java: Standard Edition (SE), Enterprise Edition (EE) e Micro Edition (ME). Este tutorial está focado na Java SE (Plataforma Java, Edição Padrão). Quase todo o software Java de código aberto é projetado para ser executado com Java SE.
Há dois pacotes diferentes de Java SE que podem ser instalados: o Ambiente de Execução Java (JRE) e o Kit de Desenvolvimento Java (JDK). O JRE é uma implementação da Máquina Virtual Java (JVM), que permite executar aplicativos e applets Java compilados. O JDK inclui o JRE, bem como outro software necessário para escrever, desenvolver e compilar aplicativos e applets Java.
Há também duas implementações diferentes de Java: OpenJDK e Oracle Java. Ambas as implementações são baseadas principalmente no mesmo código, mas o OpenJDK, a implementação de referência do Java, é totalmente de código aberto, enquanto o Oracle Java contém algum código proprietário. A maioria dos aplicativos Java funcionará bem com qualquer uma, mas você deve usar a implementação que seu software requer.
Você pode instalar várias versões e lançamentos do Java em um único sistema, mas a maioria das pessoas só precisa de uma instalação. Com isso em mente, tente instalar apenas a versão do Java necessária para executar ou desenvolver sua(s) aplicação(ões).
Esta seção mostrará como instalar os pacotes pré-compilados do OpenJDK JRE e JDK usando o gerenciador de pacotes yum
. O yum
é o gerenciador de pacotes padrão para distribuições que usam pacotes RPM.
Para instalar o OpenJDK usando o yum, você pode executar sudo yum install java
:
Por padrão, tentar instalar java
sem especificar uma versão resolverá para a versão estável mais comum do OpenJDK JRE. Como você pode ver deste resultado, até o momento desta escrita, essa é a java-1.8.0-openjdk
:
OutputLast metadata expiration check: 0:02:38 ago on Tue 22 Feb 2022 04:57:59 PM UTC.
Dependencies resolved.
========================================================================================
Package Arch Version Repo Size
========================================================================================
Installing:
java-1.8.0-openjdk x86_64 1:1.8.0.322.b06-2.el8_5 appstream 341 k
Installing dependencies:
alsa-lib x86_64 1.2.5-4.el8 appstream 488 k
atk x86_64 2.28.1-1.el8 appstream 270 k
avahi-libs x86_64 0.7-20.el8 baseos 61 k
copy-jdk-configs noarch 4.0-2.el8 appstream 29 k
cups-libs x86_64 1:2.2.6-40.el8 baseos 432 k
fribidi x86_64 1.0.4-8.el8 appstream 88 k
…
Também serão fornecidas várias dependências junto com o Java. Na solicitação de confirmação, digite y
e pressione Enter para continuar com a instalação. Você também pode ser solicitado a aceitar as chaves de assinatura para os repositórios dos quais está instalando:
OutputImporting GPG key 0x6D745A60:
Userid : "Release Engineering <[email protected]>"
Fingerprint: 7051 C470 A929 F454 CEBE 37B7 15AF 5DAC 6D74 5A60
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
Is this ok [y/N]:
Digite y
e pressione Enter novamente.
Agora você deve ter uma instalação de Java funcional. Para confirmar isso, você pode executar java -version
, para verificar a versão do Java que agora está disponível em seu ambiente:
Nota: Na maioria das vezes, os argumentos da linha de comando são precedidos por um traço para argumentos de uma letra, ou dois traços para argumentos de palavra completa. O Java segue uma convenção diferente de usar um traço para todos os argumentos, neste caso, -version
.
Outputopenjdk version "1.8.0_322"
OpenJDK Runtime Environment (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
As interações entre as convenções de nomenclatura do Java e as convenções de nomenclatura de pacotes do Linux podem ser um pouco confusas. Anteriormente neste tutorial, esclarecemos a diferença entre o ambiente JDK completo para desenvolvimento e o ambiente JRE para executar aplicativos Java. Embora OpenJDK seja o nome da distribuição de código aberto do Java, você realmente só instalou o JRE do OpenJDK. Para instalar o JDK completo do OpenJDK, você deve instalar o pacote correspondente com -devel
adicionado ao seu nome. Esta é uma convenção comum para pacotes de desenvolvimento para outros ambientes de programação, que o Java também segue, embora a terminologia se sobreponha de forma desajeitada aqui.
Como antes, você pode instalar java-devel
para obter a versão padrão, ou especificar java-1.8.0-openjdk-devel
:
OutputDigitalOcean Droplet Agent 63 kB/s | 3.3 kB 00:00
Dependencies resolved.
========================================================================================
Package Arch Version Repository Size
========================================================================================
Installing:
java-1.8.0-openjdk-devel x86_64 1:1.8.0.322.b06-2.el8_5 appstream 9.8 M
Transaction Summary
========================================================================================
Install 1 Package
Total download size: 9.8 M
Installed size: 41 M
Is this ok [y/N]:
Após instalar este pacote, você deverá ter um ambiente OpenJDK completo que pode compilar e executar qualquer software Java que não tenha incompatibilidades de versão específicas. Na próxima seção, você irá instalar e gerenciar outras versões do Java.
Passo 2 – Instalando Outras Versões do OpenJDK
Mais recentemente, o OpenJDK alterou o seu esquema de numeração de versão para acompanhar mais de perto as versões do Oracle Java. Para instalar uma versão mais recente do OpenJDK, você pode especificar o número da versão no nome do pacote, assim como com 1.8.0
. Por exemplo, para instalar o OpenJDK 17, você pode yum install java-17-openjdk
:
OutputLast metadata expiration check: 0:03:36 ago on Tue 22 Feb 2022 05:42:44 PM UTC.
Dependencies resolved.
========================================================================================
Package Arch Version Repository Size
========================================================================================
Installing:
java-17-openjdk x86_64 1:17.0.2.0.8-4.el8_5 appstream 244 k
Installing dependencies:
adwaita-cursor-theme noarch 3.28.0-2.el8 appstream 646 k
adwaita-icon-theme noarch 3.28.0-2.el8 appstream 11 M
at-spi2-atk x86_64 2.26.2-1.el8 appstream 88 k
at-spi2-core x86_64 2.28.0-1.el8 appstream 168 k
colord-libs x86_64 1.4.2-1.el8 appstream 234 k
java-17-openjdk-headless x86_64 1:17.0.2.0.8-4.el8_5 appstream 41 M
lcms2 x86_64 2.9-2.el8 appstream 163 k
…
Como antes, você pode instalar o ambiente JDK completo acrescentando -devel
ao nome do pacote. No entanto, após isso, a execução de programas java
ainda utilizará por padrão a versão OpenJDK 1.8.0 que você instalou anteriormente, o que você pode confirmar executando novamente java -version
:
Outputopenjdk version "1.8.0_322"
OpenJDK Runtime Environment (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
No próximo passo, você gerenciará as versões instaladas do Java.
Passo 3 – Definindo Sua Versão Padrão do Java
Se você instalou várias versões do Java, pode querer definir uma como padrão (ou seja, aquela que será executada quando um usuário executar o comando java
). Além disso, algumas aplicações exigem que certas variáveis de ambiente sejam definidas para localizar qual instalação do Java usar.
O comando alternatives
, que gerencia comandos padrão por meio de links simbólicos, pode ser usado para selecionar a versão padrão do Java. Para listar as versões disponíveis do Java que podem ser gerenciadas pelo alternatives
, use alternatives --config java
:
A saída deve listar ambas as versões do Java que você instalou:
outputThere are 2 programs which provide 'java'.
Selection Command
-----------------------------------------------
*+ 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java)
2 java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java)
Enter to keep the current selection[+], or type selection number:
Digite o número de seleção para escolher qual executável java
deve ser usado por padrão. Ele reorganizará os links simbólicos necessários no seu sistema para garantir que o comando java
aponte para o conjunto correto de bibliotecas. Você pode executar este comando novamente conforme necessário, e a saída de java -version
deve mudar de acordo.
Outputopenjdk version "17.0.2" 2022-01-18 LTS
OpenJDK Runtime Environment 21.9 (build 17.0.2+8-LTS)
OpenJDK 64-Bit Server VM 21.9 (build 17.0.2+8-LTS, mixed mode, sharing)
Muitas aplicações Java também usam as variáveis de ambiente JAVA_HOME
ou JRE_HOME
para determinar qual executável java
usar.
Por exemplo, se você instalou o Java em /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin
(ou seja, seu executável java
está localizado em /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java
), você poderia definir sua variável de ambiente JAVA_HOME
em um shell bash ou script da seguinte forma:
Observação: A variável de ambiente JAVA_HOME
prefere que você defina o caminho para sua instalação do Java terminando no diretório /jre
. Esta convenção pode mudar de uma variável para outra, então é melhor verificar cuidadosamente os exemplos ao fazer alterações.
Se você deseja que JAVA_HOME
seja definido para todos os usuários no sistema por padrão, adicione a linha anterior ao arquivo /etc/environment
. Você pode acrescentá-lo ao arquivo usando a redireção de shell echo
e >>
, para evitar ter que editar o arquivo /etc/environment
diretamente, executando este comando:
No próximo passo, você instalará o Java proprietário da Oracle junto com suas versões OpenJDK.
Passo 4 – Instalando o Oracle Java
Esta seção do guia mostrará como instalar o Oracle Java JRE e JDK (64 bits), a versão mais recente desses pacotes no momento desta escrita.
Observação: Se você estiver usando o terminal interativo nesta página, não poderá baixar e instalar o Oracle Java no ambiente.
Ao longo desta seção, estaremos usando o comando wget
para baixar os pacotes de software do Oracle Java. O wget
pode não estar incluído por padrão em sua distribuição Linux, então, para acompanhar, você precisará instalá-lo executando:
Você deve aceitar o Contrato de Licença de Código Binário Oracle para Java SE, que é um dos passos incluídos, antes de instalar o Oracle Java.
Observação: Para instalar o Oracle Java, você precisará acessar a Página de Downloads do Oracle Java, aceitar o contrato de licença e copiar o link de download do pacote Linux x86 .rpm
apropriado. Substitua o link de download copiado no lugar da parte destacada do comando wget
.
Mude para o diretório home e faça o download do Oracle Java RPM com estes comandos:
Em seguida, instale o RPM com yum localinstall
(se você baixou uma versão diferente, substitua o nome do arquivo aqui):
Ao prompt de confirmação, insira y
e pressione Enter para continuar com a instalação.
Você pode excluir o arquivo de arquivo que você baixou anteriormente:
Agora você pode reexecutar o comando alternatives
e deverá ver uma terceira opção para usar o Oracle Java:
outputThere are 3 programs which provide 'java'.
Selection Command
-----------------------------------------------
1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java)
+ 2 java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java)
* 3 /usr/java/jdk-17.0.2/bin/java
Enter to keep the current selection[+], or type selection number:
Os passos deste tutorial devem ser suficientes para instalar e executar qualquer versão disponível do Java, dependendo do seu caso de uso.
Conclusão
Neste tutorial, você instalou e gerenciou várias versões do Java usando o gerenciador de pacotes yum
, o comando alternatives
e variáveis de ambiente. Todos esses são aspectos fundamentais da gestão do ambiente Linux, e o Java fornece um exemplo especialmente bom de como trabalhar com eles por causa de suas muitas versões diferentes.
Em seguida, você pode querer aprender como usar o Java em outros contextos.
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-java-on-centos-and-fedora