R is not detecting the latest Java version (1.8) installed when using sparklyr package
R没有检测到为sparklyr软件包的使用而安装的最新Java版本(1.8)。
1 2 3 4 5 6 7 8 9 10 11 12 | config <- spark_config() config$sparklyr.gateway.port = 10000 config$sparklyr.gateway.connect.timeout = 1 config$sparklyr.gateway.start.wait = 1000 library(sparklyr) library(dplyr) library(DBI) sc <- spark_connect(master="yarn-client", method = c("shell"),config=config, app_name ="sparklyr",version="2.0.0", extensions = sparklyr::registered_extensions()) Error in validate_java_version(spark_home) : Java version1.6.0.65 detected but 1.7+ is required. Please download and install Java from https://www.java.com/en/ |
我更新了Java版本并在Mac终端中确认。 然后我重新启动了Rsession:
1 2 3 4 5 | /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java - version java version"1.8.0_121" Java(TM) SE Runtime Environment (build 1.8.0_121-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode) |
但我仍然得到相同的错误过时的Java版本:
1 2 3 | Error in validate_java_version(spark_home) : Java version1.6.0.65 detected but 1.7+ is required. Please download and install Java from https://www.java.com/en/ |
知道如何解决这个问题吗?
目前(2019年开始,版本0.9.4)
您可以在终端中查看您的版本
1 | java -version |
如果你得到类似的东西
1 2 3 | java version"1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-468-11M4833) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-468, mixed mode) |
你需要更新它。如果您安装了
1 2 | brew tap caskroom/versions brew cask install java8 |
完成后,您可以检查本地计算机上的安装
1 | ls -1 /Library/Java/JavaVirtualMachines/ |
通常,在重新启动R会话后,
如果不是这种情况,可以在
1 | Sys.setenv(JAVA_HOME ="/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home") |
当使用RStudio建议的指南在
我有另一个java版本,我该怎么办?
调用
如果你有类似的情况,请执行
此信息来自于闪闪发光的GitHub Repo和另一个stackOverflow问题。
我能够通过从以下网站安装最新的JAVA版本来解决这个问题:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
您可以通过在mac终端上运行以下命令来进一步检查版本是否已成功更新:
1 | java -version |
现在我可以使用sparklyr包了。