O h2o falhou ao se conectar quando chamado a partir do R: Java version missmatch

h2o estava trabalhando antes no meu laptop, mas não o usei por um tempo (e instalei novos pacotes e atualizei as coisas nesse meio tempo). Ontem tentei usá-lo, mas não funcionou. Eu apaguei oR h2o empacotado e eu reinstaleih2o do zero com

install.packages("h2o")

Eu tentei correrh2o comh2o.init() mas me dá esse erro

java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

Starting H2O JVM and connecting: ............................................................ 
[1] "localhost"
[1] 54321
[1] TRUE
[1] -1
[1] "Failed to connect to localhost port 54321: Connection refused"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 54321: Connection refused
[1] 7
Error in h2o.init() : H2O failed to start, stopping execution.

Quando olho para o log de erros, ele mostra

Only Java 1.6-1.8 supported, version is 9

Tentei procurar mais informações e acho que o erro é acionado poresse código na linha 1836:

if (version != null && !(version.startsWith("1.6") || version.startsWith("1.7") || version.startsWith("1.8"))) {
  System.err.println("Only Java 1.6-1.8 supported, version is " + version);
  return true;

Assim pareceh2o está verificando uma versão que começa com 1.6, 1.7 e 1.8, mas minha versão, por algum motivo, começa com 9! No entanto, no terminal,java -version dá

openjdk version "1.8.0_121"
OpenJDK Runtime Environment (Zulu 8.20.0.5-macosx) (build 1.8.0_121-b15)
OpenJDK 64-Bit Server VM (Zulu 8.20.0.5-macosx) (build 25.121-b15, mixed mode)

ewhich java dá

/Users/myusername/anaconda3/bin/java

------------ EDIT -------

Mais informações:/usr/libexec/java_home -V dá

Matching Java Virtual Machines (4):
    9, x86_64:  "Java SE 9" /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home
    1.8.0_144, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
    1.8.0_51, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
    1.8.0_25, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

O que explica a9 esteh2o está vendo. Acho estranho que ele espera1.x.0 mas a versão é apenas9. De qualquer forma, parece que preciso apontar queh2o.init() comando para o1.8 java, mas não consegui descobrir como fazê-lo.

Eu costumo usarbrew instalar a maioria das coisas, mas eu nunca usojava então eu não sei nada sobre as versões.

Obrigado e melhor!

questionAnswers(2)

yourAnswerToTheQuestion