Como instalar o Java 8 no Mac

996

Quero fazer alguma programação com o JavaFX mais recente, que requer o Java 8. Estou usando o IntelliJ 13 CE e o Mac OS X 9 Mavericks. Executei o instalador do Java 8 da Oracle e os arquivos parecem ter terminado em

/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk

mas as versões anteriores estão em

/System/Library/Java/JavaFrameworks/jdk1.6....

Não sei por que o instalador mais recente coloca isso em /Libraryvez de /System/Library(nem qual a diferença). Mas /usr/libexec/java_homenão encontra o 1.8, portanto, todas as postagens que encontrei sobre como definir sua versão java atual não funcionam. Tentei adicionar um link simbólico para fazer com que pareça que 1,8 esteja no /System/Library...caminho, mas isso não ajuda. /usr/libexec/java_home -Vainda lista apenas o antigo Java 1.6.

Ironicamente, o painel de controle "Java" em Preferências do sistema mostra apenas o Java 1.8!

Por que o instalador da Oracle não o coloca onde realmente vai? E como posso solucionar esse problema?

user3763100
fonte
8
"Realmente vai" onde acabou - /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/. A anterior foi para onde foram as versões Java fornecidas pela Apple e, como a Apple não fornece mais Java, o local da instalação mudou.
awksp

Respostas:

1889

A Oracle tem um histórico ruim para facilitar a instalação e a configuração do Java, mas, usando o Homebrew , o OpenJDK (Java 14) mais recente pode ser instalado com:

brew cask install java

Para muitos casos de uso, dependendo de uma versão mais antiga (geralmente Java 8), o projeto AdoptOpenJDK torna isso possível com uma etapa extra.

brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk8

Usuários existentes do Homebrew podem encontrar Error: Cask adoptopenjdk8 exists in multiple tapsdevido a soluções alternativas anteriores com instruções diferentes. Isso pode ser resolvido especificando completamente o local com brew cask install adoptopenjdk/openjdk/adoptopenjdk8.

l3x
fonte
89
Em dezembro de 2015, agora não é mais necessário instalar o barril manualmente, pois agora faz parte da instalação do homebrew. Então, depois de atualizar o homebrew via brew update, você está pronto para usar brew cask.
davetw12
63
Obrigado, é incrível como é horrível o processo de instalação do Java usando os links / documentos "oficiais".
Enderland
15
@tandrewnichols Acabei de rodar brew cask install javano meu El Capitan Mac e ele está baixando jdk-8u112-macosx-x64.dmg.
Calrion # 24/16
44
Error: Cask 'java8' is unavailable: No Cask with this name exists.
Elderry 16/08/19
87
A solução para agora é brew tap homebrew/cask-versionsusar e usar #brew cask install homebrew/cask-versions/adoptopenjdk8
Sean Breckenridge
736

Nota: O Oracle Java 8/9/10 não está mais disponível para download público (alteração de licença).

Primeiro instale e atualize o brew do Terminal:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew tap homebrew/cask-versions

brew update

NOVO a partir de junho de 2019

Para instalar os JDKs do AdoptOpenJDK:

brew tap adoptopenjdk/openjdk

brew cask install adoptopenjdk8
brew cask install adoptopenjdk9
brew cask install adoptopenjdk10
brew cask install adoptopenjdk11

VELHO

Java 8:

brew cask install java8

Java mais recente:

brew cask install java
kavehmb
fonte
3
Interessante notar que isso não funcionou para mim em Mavericks, por isso não responder à pergunta do OP, mas não funcionou para mim no capitão, por isso foi útil como uma resposta ..
Tommy
3
Instalei o homebrew fresco em uma nova máquina OS X El Capitan e não precisei executar o brew tapcomando na resposta acima. O primeiro e o terceiro comando foram suficientes.
Adil Hussain
14
Error: Cask 'java8' is unavailable: No Cask with this name exists.
user924
4
$ brew cask install adoptopenjdk8 Error: Cask adoptopenjdk8 exists in multiple taps: caskroom/versions/adoptopenjdk8 adoptopenjdk/openjdk/adoptopenjdk8. Eu tenho que usarbrew cask install adoptopenjdk/openjdk/adoptopenjdk8
roottraveller
5
brew tap homebrew/cask-versionse brew cask install adoptopenjdk8trabalha para mim no Hi Sierra 10.13.6
xjlin0 /
135

O Java8 não está mais disponível no homebrew, brew install java8não funcionará.

Em vez disso, use:

brew cask install adoptopenjdk/openjdk/adoptopenjdk8

Veja este commit para detalhes técnicos.

Observe também que você pode encontrar problemas ao redor Cask adoptopenjdk8 exists in multiple taps. Esse é um problema conhecido, atualmente sendo trabalhado, que você pode ver aqui:

https://github.com/AdoptOpenJDK/homebrew-openjdk/issues/106

Para aqueles que não querem ver os detalhes, aqui está um resumo:

# To install JDK8
brew cask install adoptopenjdk/openjdk/adoptopenjdk8

# To be able to safely run 'brew cleanup'
brew untap adoptopenjdk/openjdk
brew untap caskroom/versions
brew cleanup
Dave Kerr
fonte
2
Existe alguma diferença em usar AdoptOpenJDK/openjdkem vez de usarhomebrew/cask-versions/adoptopenjdk8
Sean Breckenridge
Recebo o seguinte quando eu tentar a sua resposta: Cask adoptopenjdk8 existe em várias torneiras: caskroom / versões / adoptopenjdk8 adoptopenjdk / openjdk / adoptopenjdk8
Koray Tugay
@KorayTugay Atualizei a resposta, isso deve resolver seus problemas!
Dave Kerr
1
@SeanBreckenridge - a equipe do HomeBrew está trabalhando nisso, no momento em que parece que o AdoptOpenJDK será usado, mas ainda há alguma incerteza, consulte a edição atualmente aberta github.com/AdoptOpenJDK/homebrew-openjdk/issues/106 para obter detalhes!
Dave Kerr #
1
brew cask install homebrew/cask-versions/adoptopenjdk8trabalhou para mim
protoEvangelion
123

Acabei de fazer isso no meu MBP e tive que usar

$ brew tap caskroom/versions
$ brew cask install java8

para instalar o java8.

Jain Waldrip
fonte
9
Isso me ajudou a instalar a versão específica do java. Agora, quando o java 9 é lançado, a execução de "brew barrk install java" instala o java 9. "brew cask install java8" não estava funcionando para mim até que eu executei "brew tap caskroom / versions".
interrompa
6
Sim, brew tap caskroom/versionsé necessário antes da instalação do java8
hendrix
11
ou apenas brew install homebrew/cask-versions/java8pela vitória!
Naruto Sempai
4
Não é mais possível instalar o Java8 usando o Brew devido a alterações na licença do Oracle. O Java8 não está mais disponível para download público.
Marcelo Xavier
2
Consulte stackoverflow.com/a/55775566/9306378 se você ainda deseja usar o java8. Observe que isso usa o OpenJDK.
Polpetta
62

Uma opção que realmente estou começando a executar aplicativos no meu computador local é usar o Docker. Você pode simplesmente executar seu aplicativo no contêiner oficial do JDK - o que significa que você não precisa se preocupar em configurar tudo em sua máquina local (ou em executar várias versões diferentes do JDK para aplicativos diferentes, etc.)

Embora isso possa não ajudá-lo com seus problemas de instalação atuais, é uma solução que significa que você pode desviar do campo minado de problemas relacionados à tentativa de executar o Java corretamente na sua máquina de desenvolvimento!

Os benefícios são:

  1. Não é necessário configurar nenhuma versão do Java em sua máquina local (você apenas executará o Java em um contêiner que você extrai do Docker Hub)
  2. É muito fácil alternar para diferentes versões do Java, basta alterar a tag no contêiner.
  3. As dependências do projeto são instaladas no contêiner - portanto, se você estragar sua configuração, você pode simplesmente destruir o contêiner e iniciar novamente.

Um exemplo muito simples:

Crie um Dockerfile :

FROM java:8
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
  • Aqui estamos especificando o contêiner Java versão 8 do SDK em execução ( java:8- para usar Java 7, você pode simplesmente especificar: java:7)
  • Estamos mapeando o diretório local com o diretório: /usr/src/myapp dentro do contêiner

Crie um docker-compose.yml arquivo:

version: "2"

services:
  java:
    build: .
    volumes:
      - .:/usr/src/myapp

Agora, suponha que tenhamos este arquivo Java:

HelloWorld.java

public class HelloWorld {
    public static void main(String[] args) {        
        System.out.println("Hello, World");
    }
}

Portanto, temos a seguinte estrutura de arquivos:

.
|_ Dockerfile
|_ docker-compose.yml
|_ HelloWorld.java

Você pode fazer várias coisas em Java, como:

compilar:

docker-compose run --rm java javac HelloWorld.java 
  • Observe que a HelloWorld.class aparece no seu diretório atual (isso é porque mapeamos o diretório atual para o local dentro do contêiner onde nosso código existe

corre:

docker-compose run --rm java java HelloWorld 
  • Nota: na primeira vez em que você executar, ele buscará a imagem etc. Isso levará um tempo - isso só acontece na primeira vez
  • docker-compose run - executa um comando de dentro do contêiner
  • -rm diz ao docker para remover o contêiner assim que o comando terminar de executar
  • java é o nome do serviço / contêiner (do nosso arquivo docker-compose) no qual esse comando será executado
  • o restante da linha é o comando para executar dentro do contêiner.

Essa é uma maneira bem legal de lidar com a execução de diferentes versões do Java para diferentes aplicativos sem fazer uma bagunça completa na sua configuração local :).

Aqui está um exemplo um pouco mais complexo que possui o Maven e um aplicativo simples do Spring

Aviso Legal:

toast38coza
fonte
2
Bom exemplo usando o Docker, não sei por que você recebeu um voto negativo antes.
Andrew Andrew
28
Eu imagino o voto negativo, porque isso não responde à questão da execução do Java no OS X / MacOS. Responder "Como faço isso na plataforma X" com "Basta usar uma VM / shim para fazer na plataforma Y" não é produtivo.
perfil completo de whitfin
especialmente para o desenvolvimento de Java nativo (por exemplo, usando SWIG, JNI e LIBRARY_PATH)
Mizux 15/04/19
56

Suposição: máquina Mac e você já instalou o homebrew.

Instale o barril (com Homebrew 0.9.5 ou superior, o barril está incluído, pule esta etapa):

$ brew tap caskroom/cask
$ brew tap caskroom/versions

Para instalar o java mais recente:

$ brew cask install java

Para instalar o java 8:

$ brew cask install adoptopenjdk/openjdk/adoptopenjdk8

Se você deseja instalar / gerenciar várias versões, use 'jenv':

Instale e configure o jenv:

$ brew install jenv
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile

Adicione o java instalado ao jenv:

$ jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
$ jenv add /Library/Java/JavaVirtualMachines/jdk1.11.0_2.jdk/Contents/Home

Para ver todo o java instalado:

$ jenv versions

O comando acima fornecerá a lista de java instalado:

* system (set by /Users/lyncean/.jenv/version)
1.8
1.8.0.202-ea
oracle64-1.8.0.202-ea

Configure a versão java que você deseja usar:

$ jenv global oracle64-1.6.0.39

Para definir JAVA_HOME:

$ jenv enable-plugin export
Lyncean Patel
fonte
2
Melhor solução! Obrigado!
viktorianer 04/02
1
obrigado! É mesmo o que eu procurava.
csomakk 4/03
Obrigado. Começa com uma solução curta e direta e continua com outra ferramenta útil: 'jenv' é útil para se ter por perto e está ausente na maioria das outras respostas. Ajudou a empacotar o código Scala (2.12 / 2.13) em 2020.
emllnd
Funciona como um encanto, instala barril de cerveja adoptopenjdk / openjdk / adoptopenjdk8
jeadonara
25

Estou com o mesmo problema para resolver, porque preciso instalar o JDK8 para executar o Android SDK Manager (porque parece que não funciona bem com o JDK9). No entanto, eu digo a você como resolvo todos os problemas em um Mac (Sierra).

Primeiro, você precisa preparar com barril e jenv .

  1. Você pode encontrar um guia útil aqui, Guia de instalação do Homebrew Cask . Lembre-se de tocar em 'caskroom / versions' em execução no terminal: brew tap caskroom/versions
  2. Depois disso, instale o jenv com: brew install jenv
  3. Instale a versão que você deseja com o cask brew cask install java8( java7ou javase você deseja instalar a versão mais recente, jdk9)
  4. A última etapa é configurar qual versão executar (e permitir que o jenv gerencie seu JAVA_HOME) jenv versionspara listar todas as versões instaladas em sua máquina e, em seguida, ativar a versão desejada.jenv global [JDK_NAME_OF_LIST]

Você pode encontrar outras informações úteis aqui neste Github Gist brew-java-and-jenv.md , neste blog Instale vários JDK em um Mac e no site da Jenv

Benedetto Abbenanti
fonte
Jenv é bastante fácil e super útil. Eu tenho vários projetos que precisam java 8 e 11
Nikhil Sahu
20
brew cask install caskroom/versions/java8
Uma corrida
fonte
18

Se você possui várias versões Java em sua máquina e deseja escolhê-las dinamicamente em tempo de execução, ou seja, no meu caso, tenho duas versões:

ls -la /Library/Java/JavaVirtualMachines
drwxr-xr-x  3 root  wheel    96B Nov 16  2014 jdk1.7.0_71.jdk/
drwxr-xr-x  3 root  wheel    96B Mar  1  2015 jdk1.8.0_31.jdk/

Você pode alterá-los modificando o /etc/profileconteúdo. Basta adicionar (ou modificar) as duas linhas a seguir no final do arquivo:

export JAVA_HOME=YOUR_JAVA_PATH/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

No meu caso, deve ser o seguinte se eu quiser usar:

Java 7:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

Java 8:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

Depois de salvar o arquivo, execute source /etc/profile e ele deve funcionar. Aqui estão os resultados quando eu uso a primeira e a segunda opção de acordo:

Java 7:

java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)

Java 8:

java -version 
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)

O processo é semelhante se sua pasta java estiver localizada em locais diferentes.

nxhoaf
fonte
Por que não criar um alias para uma versão diferente, como alias java8=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home/bin/java?
Cglacet
14

Parece que ninguém mencionou o SDK man ( https://sdkman.io/ ) ainda.

O SKD man permite instalar várias versões do Java no Mac e alternar facilmente entre essas versões. Mais informações estão disponíveis em https://sdkman.io/usage .

Por exemplo:

$ sdk list java                                                                                                                                                                                                                       
================================================================================
Available Java Versions
================================================================================
   * 12.ea.20-open
     11.0.1-zulu
 > * 11.0.1-open
     10.0.2-zulu
     10.0.2-open
     9.0.7-zulu
     9.0.4-open
     8.0.192-zulu
     8.0.191-oracle
   + 8.0.181-oracle
     7.0.181-zulu
     1.0.0-rc-10-grl
     1.0.0-rc-9-grl
     1.0.0-rc-8-grl


================================================================================
+ - local version
* - installed
> - currently in use
================================================================================

$ sdk install java 8.0.191-oracle

$ sdk use java 8.0.191-oracle

Using java version 8.0.191-oracle in this shell.                                                                                                                                                                                                      

$ java -version                                                                                                                                                                                                                        
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

$ sdk use java 11.0.1-open                                           

Using java version 11.0.1-open in this shell.

$ java -version                                                                                                                                                                                                                        openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)
                                                                                                                                                                                                         ```

stderr
fonte
13

Use o instalador, Luke

Outras respostas sugerindo o gerenciador de pacotes Homebrew parecem um pouco extremas para mim. Tenho certeza que o Homebrew tem alguns bons usos. Mas, simplesmente para executar o Java, instalando o Homebrew é uma etapa extra desnecessária. Se seu objetivo é simplesmente executar o Java, basta baixar um instalador do Mac de uma fonte confiável.

Você tem várias fontes para obter um aplicativo instalador fácil de usar para colocar o Java no seu Mac. Execute o instalador no seu Mac, assim como em muitos outros aplicativos.

Aqui está um diagrama de fluxograma para encontrar uma fonte do Java 11, alguns dos quais também oferecem o Java 8.

Fluxograma orientando você na escolha de um fornecedor para uma implementação Java 11

Faça o download de um instalador de um fornecedor como o AdoptOpenJDK.net.

Página de download em AdoptOpenJDK.net

Execute o instalador.

captura de tela do instalador em execução

JavaVirtualMachines pasta agora está correta

Por que o instalador da Oracle não o coloca onde realmente vai? E como posso solucionar esse problema?

Não é um problema.

A pasta /Library/Java/JavaVirtualMachines/é o novo local das JVMs no macOS .

captura de tela da pasta "/ Library / Java / JavaVirtualMachines /" no Finder

Para instalar uma JVM, use um instalador, discutido abaixo.

Para desinstalar, basta usar o Finder para excluir uma JVM dessa pasta. Você será solicitado a fornecer uma senha de administrador do sistema para concluir a remoção.


Java 9 e 10 e 11

Em 2010, a Apple ingressou no projeto OpenJDK , juntamente com Oracle , IBM , Red Hat , Azul e outros fornecedores de Java. Cada membro contribui com código-fonte, teste e feedback para a base de código unificada do OpenJDK.

A Apple contribuiu com a maior parte de seu código específico para Mac para sua JVM. Agora, a Apple não lança mais sua própria JVM específica para Mac. Agora você tem a opção de fornecedor da JVM, com construções provenientes da base de código do OpenJDK.

Você encontrará o código-fonte em: http://openjdk.java.net

Cadência do novo lançamento

Esteja ciente de que, em 2017, a Oracle, o JCP e o OpenJDK adotaram um novo plano rápido de "release release" para que as versões agendadas regularmente do Java sejam entregues de maneira previsível.

Leia esta postagem do blog da Azul Systems em 2018-07 para obter muitos detalhes, Eliminando a confusão da atualização do Java por Simon Ritter .

Leia também Java Is Still Free .

Fornecedores

Para uma lista bastante exaustiva das implementações anteriores e atuais da JVM, consulte esta página na Wikipedia .

Aqui está uma discussão de alguns fornecedores. Veja o fluxograma acima para mais fornecedores

Oracle JDK

A Oracle fornece instaladores JDK e JRE para várias plataformas, incluindo o macOS.

Ao longo dos anos desde a aquisição da Sun, a Oracle combinou as melhores partes dos dois mecanismos da JVM, HotSpot e JRocket , e as fundiu no OpenJDK projeto , usado como base para suas próprias implementações de marca do Java.

Seu novo plano de negócios, a partir de 2018, é fornecer uma implementação de Java da marca Oracle por uma taxa na produção e sem nenhum custo para uso no desenvolvimento / teste / demonstração. O suporte para versões anteriores requer um programa de suporte pago. Eles declararam que sua intenção de que o lançamento da marca estivesse em paridade com o lançamento do OpenJDK. Eles até doaram seus complementos comerciais, como o Flight Recorder, ao projeto OpenJDK.

A Oracle também lança uma compilação do OpenJDK sem suporte: http://jdk.java.net/

A Oracle produziu um JDK de finalidade especial, o GraalVM .

Zulu & Zing por Azul

A Azul Systems fornece uma variedade de produtos JVM.

  • Sua Zululinha é baseada diretamente no OpenJDK e está disponível sem custo com planos opcionais de suporte pago.
  • Sua Zinglinha oferece produtos comerciais da JVM aprimorados com implementações técnicas alternativas, como um coletor de lixo especializado .

As duas linhas oferecem instaladores para o macOS.

Atualmente, estou usando o Zulu para Java 10.0.1 no macOS High Sierra com IntelliJ 2018.2 e Vaadin 8 . Eu baixei desta página . A propósito, não encontro nenhum item relacionado ao Java instalado no aplicativo Apple System Preferences .

AdoptOpenJDK.net

O AdoptOpenJDK é um esforço liderado pela comunidade para criar binários da fonte OpenJDK. Eles pretendem oferecer atualizações ao longo do tempo, doadas pelos membros da comunidade.

  • Sua escolha do mecanismo HotSpot ou OpenJ9 .
  • Construções disponíveis para macOS, Linux e Windows.

OpenJ9 by Eclipse

O projeto OpenJ9 é outra implementação do mecanismo da JVM, uma alternativa ao HotSpot .

Agora patrocinado na Eclipse Foundation, com tecnologia e suporte doados pela IBM em 2017.

Para binários pré-criados, eles fazem referência ao projeto AdoptOpenJDK mencionado acima.

Motivações na escolha de um fornecedor para Java.png


Como instalar

Os instaladores fornecidos pela Oracle ou pela Azul são totalmente simples de operar. Basta executar o aplicativo de instalação no seu Mac. Uma janela aparece para indicar o andamento da instalação.

Quando concluído, verifique sua instalação da JVM:

  • Visitando a /Library/Java/JavaVirtualMachines/pasta para ver um item para a nova JVM.
  • Executando um console como Terminal.app e digite java -versionpara ver o número da marca e versão da sua JVM.

Após verificar o sucesso, desmonte a imagem .dmg no Finder. Em seguida, lixeira o arquivo .dmg que você baixou.

Basil Bourque
fonte
13

Eu tenho aplicativos que usam Java 7 e 8 e precisam ir e voltar o tempo todo.

Eu uso esse script escrito por Johan:

http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/

Agora você pode configurá-lo na inicialização ou chamar o script posteriormente.
Instale o JDK para Mac.

Java 7

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

Java 8

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


Recomendação atualizada !! :

Use jenv https://www.jenv.be/ e homebrew.

Então é justo jenv global oracle6401.6.0.39e pronto.

Nathan Dunn
fonte
1
+1: eu uso esse script e concordo, é bastante útil para desenvolvedores que têm vários projetos que exigem versões diferentes do Java.
Barclay
8
Realmente não há necessidade de definir nenhum script, desde que você só precise usar uma versão específica em todo o sistema. Basicamente, tudo o que você precisa fazer é adicionar ao seu ~/.bashrcou ~/.bash_profile: export JAVA_HOME = "/ usr / libexec / java_home -v 1.8" e também adicionar $JAVA_HOME/binao seu $PATHse o instalador do java ainda não o fez. (NOTA: substituir aspas duplas com acentos graves para / usr / libexec / java_home, não pode entrar backticks literais nos comentários ..)
ccpizza
se você deseja instalar o java 7 (ao lado do java 8) via homebrew, o comando é brew tap caskroom/versionsseguido por brew cask install java7.
precisa saber é
2
O jenv é uma ferramenta muito conveniente para gerenciar várias versões do Java, globalmente ou localmente por diretório.
Christian Long
11

Execute estes comandos no mac High Sierra

brew update
brew tap caskroom/versions
brew cask install java8

e verifique com o comando

java -version
TLbiz
fonte
Obtendo isto: #Error: Download failed on Cask 'java8' with message: Download failed: https://download.oracle.com/otn-pub/java/jdk/8u202-b08/1961070e4c9b4e26a04e7f5a083f551e/jdk-8u202-macosx-x64.dmg
Siddhartha
7

Usando fermentação

brew install Caskroom/cask/java
Santhosh
fonte
7

A melhor maneira é usar o gerenciador de pacotes Brew, mas o comando

 brew cask install java8

falha com erro:

Error: No available formula with the name "java8" 

Então use

brew cask install caskroom/versions/java8

Como eu encontrei o "caskroom / versions / java8": usando o comando brew search:

brew cask search java8
Navjot Bhardwaj
fonte
7

Se você o estiver usando NÃO para uso pessoal, convém usar o OpenJDK para evitar qualquer ação potencial da Oracle.

brew cask install adoptopenjdk8
Edmund Lee
fonte
find / usr / local / Homebrew / Biblioteca / Torneiras / | grep -i jdk | xargs rm -v se acontecer a obter o "Erro: Barril adoptopenjdk8 existe em várias torneiras:" erro ...
Yordan Georgiev
5

Se você estiver em um Mac, o Homebrew é a maneira de instalar coisas.

Parece que a versão 8 não é mais a mais recente, portanto não está disponível usando o padrão brew cask install java.

Em vez disso, consegui fazer o seguinte:

brew install homebrew/cask-versions/

Se isso falhar, tente o próximo diretamente:

brew install homebrew/cask-versions/adoptopenjdk8

Teste com brew cask listoujava -version

Anas
fonte
+1, que funciona para mim no macOS 10.12.6 Sierra. (Ou instale o barril de fabricação adoptopenjdk / openjdk / adoptopenjdk8)
McAllister Bowman
+1 O primeiro falhou (Erro: nenhuma fórmula disponível com o nome "homebrew / cask-version /"), mas o segundo parecia funcionar. Resposta atualizada para evitar assustar as pessoas com a primeira falha.
Dennis Jaheruddin
4

O mais simples é baixar o arquivo dmg no site a seguir e instalar com um clique duplo

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

procure JVMs disponíveis no diretório inicial

ls -al /Library/Java/JavaVirtualMachines

e atualize o .bash_profile com a versão relevante

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_XXX.jdk./Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

e finalmente

source ~/.bash_profile
vimal krishna
fonte
3

Instale com Homebrew

A versão do Java disponível no Homebrew Cask anterior a 3 de outubro de 2018 era de fato a Oracle JVM. Agora, no entanto, ele foi atualizado para o OpenJDK. Certifique-se de atualizar o Homebrew e você verá a última versão disponível para instalação.

1. instale o Homebrew se você ainda não o fez. Verifique se está atualizado:

brew update

2. Adicione a torneira de barris, se você ainda não (ou não está mais vendo versões mais antigas do Java na etapa 3):

brew tap homebrew/cask-versions

3. e para as versões AdoptOpenJDK, adicione esse toque:

brew tap adoptopenjdk/openjdk

Esses barris alteram suas versões Java frequentemente, e pode haver outros toques por aí com versões Java adicionais.

4. Procure versões instaláveis:

brew search java 

ou para as versões AdoptOpenJDK:

brew search jdk     

5. Verifique os detalhes na versão que será instalada:

brew cask info java

ou para a versão AdoptOpenJDK:

brew cask info adoptopenjdk

6. Instale uma versão específica do JDK, como java11, adoptopenjdk8, ou apenas java ou adoptopenjdk para a atual. Por exemplo:

**brew cask install java**

**brew cask install java8**

**brew cask install java11**

Você também pode usar o caminho completo para versões mais antigas:

brew cask install homebrew/cask-versions/java11
Dean Jain
fonte
Presumivelmente, fiz algo errado, mas ao tentar executar o java8, recebi um erro: Erro: o barril 'java8' está indisponível: não existe nenhum barril com esse nome.
Dennis Jaheruddin
2

Você pode tentar isso:

$ brew search jdk
$ brew cask install homebrew/cask-versions/adoptopenjdk8
$ /usr/libexec/java_home

 

nerd
fonte
2

Caminho mais fácil

1) brew cask install java

2) java -version

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)

PS - Cask é uma extensão do Homebrew que se destina a gerenciar grandes binários e aplicativos gráficos do Mac, mas usando a interface do Homebrew. Veja também esta resposta no Apple StackExchange.

sapy
fonte
sempre instala a versão mais recente
Ray Garner
1

Tentar :

barril de cerveja instalar java 8 ,, dará o resultado abaixo

8tracksradiohelper adoptopenjdk8 amitv87-pip corretto8 ícones8 vmware-fusion8 x48 zulu8

Em seguida, digite: instalação do barril de fermentação adoptopenjdk8 ---- o java 8 será instalado no Mac.

args
fonte
0

Eu sugeriria o uso do SDK man, que é bastante fácil de alterar a versão (temporária e permanente) e fornece outros SDKs também. Uso o SDK há mais de um ano.

https://sdkman.io/

saif ali
fonte
tipo de dica para sdkman.io! Eu vi isso devido à discussão por tanto tempo, mas capaz de ler o final. FYI, esta dica também está acima stackoverflow.com/a/54101167/242110
AnneTheAgile
-4

Os passos abaixo funcionaram para mim.

1) Desinstale todos os jdks

Na janela Terminal, copie e cole o comando abaixo:

sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefpane

2) Instale o APPLE jdk.

https://support.apple.com/kb/DL1572?locale=en_US

3) Baixe o JDK mais recente da Oracle e instale-o, para mim foi o JDK 1.82

http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

Isso é tudo que vai funcionar como um encanto.

semio
fonte