Acabei de instalar o Ubuntu, e esta é a primeira vez que trabalho em um ambiente Linux, então aceite minha noobismo aqui.
De qualquer forma, baixei o Java 8 JDK diretamente da Oracle, mas sei que também há um OpenJDK para Java 8. Eu tenho duas perguntas.
Qual é a diferença entre a versão Oracle e OpenJDK. Prós e contras?
Quando tento obter o OpenJDK 8, não consigo. Estou colando o comando do terminal e a mensagem de erro que recebo aqui, esperando um conselho. Novamente, muito novo no Linux, estou na minha primeira distro Linux há menos de uma hora aqui neste momento.
user@computer:~/Java$ sudo apt-get install openjdk-8-jdk Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package openjdk-8-jdk
Qualquer ajuda seria apreciada. Enquanto isso, vou apenas usar o pacote Oracle. Obrigado.
Editar:
Então, agora eu tenho um novo problema. Instalei o OpenJDK 7, ele veio com o Maven e instalei antes de perceber que estava conseguindo um acordo dois por um. Agora tenho o JDK 7, o Eclipse e o Maven, e todos estão funcionando, mas estou preso no JDK 7 em vez do 8.
Vi que tem um link abaixo, pretendo conferir pela manhã, são 2h da manhã e estou cansado agora. Qualquer outro conselho para esta nova edição seria bem-vindo, caso contrário, com certeza estarei checando esse link logo de manhã.
Respostas:
ATUALIZAÇÃO : instalação sem privilégios de root abaixo
Aconselho você a não instalar pacotes manualmente no sistema ubuntu se já houver um repositório (semi-oficial) capaz de resolver seu problema. Além disso, use o Oracle JDK para desenvolvimento, apenas para evitar problemas de compatibilidade (muito esporádicos) (eu tentei muitos anos atrás, com certeza é melhor agora).
Adicione o repo webupd8 ao seu sistema:
Instale sua versão preferida de jdk (versões de java-6 a java-9 disponíveis):
Você também pode instalar várias versões do jdk, misturando as versões do openjdk e do oracle. Em seguida, você pode usar o comando update-java-backups para alternar entre as versões instaladas:
Requisitos
Se você tiver
add-apt-repository: command not found
certeza de tersoftware-properties-common
instalado:Se você estiver usando uma versão mais antiga do Ubuntu:
Instalação JDK sem privilégios de root
Se você não tem direitos de administrador em sua máquina de destino, sua aposta mais simples é usar
sdkman
para instalar o openjdk certificado pelo zulu:NOTA : o sdkman permite instalar também o Oracle JDK oficial, embora não seja a opção padrão. Veja as versões disponíveis com:
Instale a versão escolhida com:
Por exemplo:
Glossário de comandos
sudo
<command> [command_arguments]
: executa um comando com o privilégio de superusuário.add-apt-repository
<PPA_id>
: Ubuntu (assim como todos os derivados do Debian e, de um modo geral, todas as distribuições do Linux) tem um repositório principal de pacotes que lidam com coisas como dependências e atualizações de pacotes. No Ubuntu é possível estender o repositório principal usando um PPA (Personal Package Archive) que geralmente contém pacotes não disponíveis no sistema (assim como oracle jdk) ou versões atualizadas dos disponíveis (exemplo: LibreOffice 5 em LTS está disponível apenas através deste PPA ).apt-get
[install|update|upgrade|purge|...]
: é "o" gerenciador de pacote de linha de comando usado para manipular o estado de cada repositório no sistema (instalação / atualização / atualização pode ser vista como uma alteração do estado atual do repositório).No nosso caso : com o comando
sudo add-apt-repository ppa:webupd8team/java
informamos ao sistema que a próxima atualização do repositório deve recuperar as informações dos pacotes também do repo webupd8.Com
sudo apt-get update
, realmente atualizamos o repositório do sistema (todas essas operações requerem privilégios de superusuário, portanto, adicionamos sudo aos comandos).sudo apt-get install oracle-java8-installer
update-java-transactions (uma versão específica do java das update-alternativas ): no Ubuntu vários pacotes fornecem a mesma funcionalidade (navegar na internet, compilar e-mails, editar um arquivo de texto ou fornecer executáveis java / javac ...). Para permite que o sistema escolha a ferramenta de favoritos do usuário dada uma tarefa específica de um mecanismo utilizando links simbólicos sob
/etc/alternatives/
é usado. Tente atualizar o jdk conforme indicado acima (alterne entre java 7 e java 8) e veja como altere a saída deste comando:ls -l /etc/alternatives/java*
Em nosso caso :
sudo update-java-alternatives --set java-8-oracle
atualize os links simbólicos em / etc / alternative para apontar para executáveis java-8-oracle.Extras:
man
<command>
: comece a usar o man para ler uma ajuda muito bem escrita e detalhada sobre (quase) todos os comandos do shell e suas opções (cada comando que menciono nesta pequena resposta tem uma página de manual, tenteman update-java-alternatives
).apt-cache
search <search_key>
: consulta o cache APT para procurar um pacote relacionado com a search_key fornecida (pode ser o nome do pacote ou alguma palavra na descrição do pacote).apt-cache
show <package>
: fornece informações APT para um pacote específico (versão do pacote, instalado ou não, descrição).fonte
apt-get install software-properties-common
. Vou atualizar a postagem consequentemente para incluir esse requisito. ObrigadoComo você pode ver, só tenho o java 1.7 instalado (em uma máquina Ubuntu 14.04).
Para instalar o Java 8, eu fiz,
Depois, agora tenho java 7 e 8,
BÔNUS ADICIONADO (como alternar entre as diferentes versões)
Como você pode ver, estou executando o jdk 8 aberto. Para alternar para o jdk 7, pressione
1
e pressione a Entertecla. Faça o mesmojavac
comsudo update-alternatives --config javac
,.Verifique as versões para confirmar a mudança:
java -version
ejavac -version
.fonte
Estou obtendo o OpenJDK 8 dos repositórios oficiais do Debian, em vez de algum PPA aleatório ou binário Oracle não livre. Veja como eu fiz:
sudo apt-get install debian-keyring debian-archive-keyring
Faça
/etc/apt/sources.list.d/debian-jessie-backports.list
:Faça
/etc/apt/preferences.d/debian-jessie-backports
:Então, finalmente, faça a instalação:
fonte
update-alternatives --config java ;-)
isso deve funcionar
fonte
Eu estava tendo o mesmo problema e tentei todas as soluções desta página, mas nenhuma funcionou.
O que finalmente funcionou foi adicionar o
universe
repo à minha lista de repo. Para fazer isso, execute o seguinte comandoDepois de executar o comando acima, fui capaz de executar
sem um problema e o pacote foi instalado.
Espero que isso ajude alguém.
fonte
Depois de adicionar o
JDK
repo, antes de instalar você pode querer executar uma atualização primeiro para que o repo possa ser adicionado executeapt update
e então continue com sua instalação
sudo apt install adoptopenjdk-8-hotspot
fonte