h2o from R on Windows gives curl error: Protocol "'http" not supported or disabled in libcurl

h2o from R on Windows gives curl error: Protocol "'http" not supported or disabled in libcurl

我已经在 linux 机器上从 R 成功 运行 h2o 并且也想在 Windows 中安装它。 h2o 不会为我初始化。完整的输出粘贴在下面,但关键似乎是行

[1] "Failed to connect to 127.0.0.1 port 54321: Connection refused"
curl: (1) Protocol "'http" not supported or disabled in libcurl

根据h2o页面推荐的this and this experience it might be something to do with single quotes v double quotes somewhere; but this seems unlikely because then no-one would be able to get h2o / R / Windows combination working and I gather that some people are. On the other hand, this question seems to suggest the problem will be that my curl installation may not have ssl enabled. So I downloaded curl from scratch from this wizard判断,选择64位版本,generic,选择同时启用SSL和SSH的版本;下载它并将它最终所在的文件夹添加到我的 Windows 路径中。但是没有区别。

我刚刚注意到我的 Java 运行time 环境很旧,我也会更新它。但从表面上看,问题并不明显。

欢迎提出任何建议。

> library(h2o)

> h2o.init()

H2O is not running yet, starting it now...

Note:  In case of errors look at the following log files:
    C:\Users\PETERE~1\AppData\Local\Temp\Rtmpa6G3WA/h2o_Peter_Ellis_started_from_r.out
    C:\Users\PETERE~1\AppData\Local\Temp\Rtmpa6G3WA/h2o_Peter_Ellis_started_from_r.err

java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)

............................................................
ERROR: Unknown argument (Ellis_cns773)


Usage:  java [-Xmx<size>] -jar h2o.jar [options]
        (Note that every option has a default and is optional.)

    -h | -help
          Print this help.

    -version
          Print version info and exit.

    -name <h2oCloudName>
          Cloud name used for discovery of other nodes.
          Nodes with the same cloud name will form an H2O cloud
          (also known as an H2O cluster).

    -flatfile <flatFileName>
          Configuration file explicitly listing H2O cloud node members.

    -ip <ipAddressOfNode>
          IP address of this node.

    -port <port>
          Port number for this node (note: port+1 is also used).
          (The default port is 0.)

    -network <IPv4network1Specification>[,<IPv4network2Specification> ...]
          The IP address discovery code will bind to the first interface
          that matches one of the networks in the comma-separated list.
          Use instead of -ip when a broad range of addresses is legal.
          (Example network specification: '10.1.2.0/24' allows 256 legal
          possibilities.)

    -ice_root <fileSystemPath>
          The directory where H2O spills temporary data to disk.

    -log_dir <fileSystemPath>
          The directory where H2O writes logs to disk.
          (This usually has a good default that you need not change.)

    -log_level <TRACE,DEBUG,INFO,WARN,ERRR,FATAL>
          Write messages at this logging level, or above.  Default is INFO.

    -flow_dir <server side directory or HDFS directory>
          The directory where H2O stores saved flows.
          (The default is 'C:\Users\Peter Ellis\h2oflows'.)

    -nthreads <#threads>
          Maximum number of threads in the low priority batch-work queue.
          (The default is 99.)

    -client
          Launch H2O node in client mode.

Cloud formation behavior:

    New H2O nodes join together to form a cloud at startup time.
    Once a cloud is given work to perform, it locks out new members
    from joining.

Examples:

    Start an H2O node with 4GB of memory and a default cloud name:
        $ java -Xmx4g -jar h2o.jar

    Start an H2O node with 6GB of memory and a specify the cloud name:
        $ java -Xmx6g -jar h2o.jar -name MyCloud

    Start an H2O cloud with three 2GB nodes and a default cloud name:
        $ java -Xmx2g -jar h2o.jar &
        $ java -Xmx2g -jar h2o.jar &
        $ java -Xmx2g -jar h2o.jar &

[1] "127.0.0.1"
[1] 54321
[1] TRUE
[1] -1
[1] "Failed to connect to 127.0.0.1 port 54321: Connection refused"
curl: (1) Protocol "'http" not supported or disabled in libcurl
[1] 1
Error in h2o.init() : H2O failed to start, stopping execution.
In addition: Warning message:
running command 'curl 'http://localhost:54321'' had status 1 

> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_New Zealand.1252  LC_CTYPE=English_New Zealand.1252    LC_MONETARY=English_New Zealand.1252
[4] LC_NUMERIC=C                         LC_TIME=English_New Zealand.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] h2o_3.6.0.8    statmod_1.4.22

loaded via a namespace (and not attached):
[1] tools_3.2.3     RCurl_1.95-4.7  jsonlite_0.9.19 bitops_1.0-6 

我们针对此问题向 master 推送了一个修复程序:https://0xdata.atlassian.net/browse/PUBDEV-2526 如果您想现在尝试一下,可以按如下方式从 master 构建:

git clone https://github.com/h2oai/h2o-3
cd h2o-3
./gradlew build -x test
R CMD INSTALL ./h2o-r/R/src/contrib/h2o_3.7.0.99999.tar.gz 

或者明天下载下一个nightly release