Introdução
Este tutorial irá 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 aborda a instalação da versão mais recente e padrão do Java, bem como a seleção de versões mais antigas para instalação e a alternância entre múltiplas 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 de 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 do 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: Edição Padrão (SE), Edição Empresarial (EE) e Edição Micro (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 Java compilados e applets. O JDK inclui o JRE, bem como outros softwares necessários para escrever, desenvolver e compilar aplicativos Java e applets.
Também existem duas implementações diferentes de Java: OpenJDK e Oracle Java. Ambas as implementações são baseadas em grande parte 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 solicitar.
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 seu(s) aplicativo(s).
Esta seção mostrará como instalar os pacotes pré-construídos do OpenJDK JRE e JDK usando o gerenciador de pacotes yum
. 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 irá resolver para a versão estável mais comum do OpenJDK JRE. Como você pode ver deste output, 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 múltiplas dependências junto com o Java. Na confirmação, digite y
e pressione Enter para continuar com a instalação. Você também pode ser solicitado a aceitar chaves de assinatura para os repositórios de onde 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 funcional do Java. Para confirmar isso, você pode executar java -version
, para verificar a versão do Java que está disponível em seu ambiente:
Nota: Na maioria das vezes, argumentos de linha de comando são precedidos por um traço para argumentos de uma única letra, ou dois traços para argumentos de palavras completas. O Java segue uma convenção diferente, usando 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. Mais cedo 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ê na verdade só instalou o JRE do OpenJDK. Para instalar o completo OpenJDK JDK, você deve instalar o pacote correspondente com -devel
apenso 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 desconfortável 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ê deve 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ê instalará e gerenciará outras versões do Java.
Passo 2 – Instalando Outros Lançamentos do OpenJDK
Mais recentemente, o OpenJDK alterou 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 adicionando -devel
ao nome do pacote. No entanto, após isso, a execução de programas java
ainda utilizará a versão 1.8.0 do OpenJDK que você instalou anteriormente por padrão, o que você pode confirmar executando java -version
novamente:
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ê vai gerenciar as versões instaladas do Java.
Passo 3 – Definindo Sua Versão Padrão do Java
Se você instalou múltiplas 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 requerem que certas variáveis de ambiente sejam definidas para localizar qual instalação do Java usar.
O comando alternatives
, que gerencia comandos padrão através 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 da seleção para escolher qual executável java
deve ser usado por padrão. Ele rearranjará 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)
Muitos aplicativos 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 maneira:
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
. Essa convenção pode mudar de uma variável para outra, então é melhor verificar cuidadosamente os exemplos ao fazer alterações.
Se deseja que o JAVA_HOME
seja definido para cada usuário no sistema por padrão, adicione a linha anterior ao arquivo /etc/environment
. Você pode apendá-la ao arquivo usando redirecionamento de shell com echo
e >>
, a fim de evitar a necessidade de 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 última versão desses pacotes até o momento desta redação.
Nota: 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 seguir adiante, 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 da sua home e baixe o RPM do Oracle Java com estes comandos:
Em seguida, instale o RPM com yum localinstall
(se você baixou uma versão diferente, substitua o nome do arquivo aqui):
No 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:
As etapas neste 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 do gerenciamento de ambiente Linux, e o Java fornece um exemplo especialmente bom de 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