首页 > 解决方案 > 在 Ubuntu 下无法连接到 R 中的 h2o

问题描述

base) stephen@stephen-Aspire-5250:~$ java --version
java 13.0.1 2019-10-15
Java(TM) SE Runtime Environment (build 13.0.1+9)
Java HotSpot(TM) 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)
(base) stephen@stephen-Aspire-5250:~$ find . -name h2o.jar
./R/x86_64-pc-linux-gnu-library/3.4/h2o/java/h2o.jar

然后从 R

> h2o.init()

H2O is not running yet, starting it now...
Error in .h2o.checkJava() : 
  Cannot find Java. Please install the latest JRE from
http://www.oracle.com/technetwork/java/javase/downloads/index.html

我有一种感觉 conda 搞砸了景观,但不知道如何解决。我从终端开始了 h2o:

java -jar ~/R/x86_64-pc-linux-gnu-library/3.4/h2o/java/h2o.jar

然后来自 R 的 h2o.init() 工作。不过,不要为什么 h2o 找不到我的 PATH 上的 java。

标签: h2o

解决方案


javaH2O从JAVA_HOME环境变量中获取运行时的路径,因此如果您必须使用而不是系统 shell/bash(例如使用),请确保为/从 R 正确设置它h2o.init()java -Xmx1g -jar ./h2o.jar

更多信息

经过几年在 Ubuntu/Centos/RHEL 中使用 H2O 的经验后,我现在仅从 bash 启动 H2O(在 H2O docker 容器启动时发出丰富的参数化命令),而不是使用 R 或 python API 函数(这会导致各种问题,例如例如使用所有服务器 CPU 内核,这会导致经验不足的用户大幅降低性能,或者将通过标准 H2O 端口通过根文件访问的无密码 REST API 暴露给整个公司网络......)。

附带说明一下,最新的 H2O 版本支持 Java 13,但出于安全原因,我仍然建议使用 LTS 版本,目前为 11。当然这同样适用于 Ubuntu 本身。


推荐阅读