gpt4 book ai didi

java - 如何在 Jupyter Notebook 内的 conda 环境中使用特定的 Java 版本

转载 作者:太空宇宙 更新时间:2023-11-04 09:16:42 29 4
gpt4 key购买 nike

我的总体目标是在 Jupyter 实验室的 Azure 云服务上的 R Jupyter 笔记本中使用 sparklyr。我使用 R、sparklyr 和 Java 8 创建了一个新的 conda 环境(因为这是 Sparklyr 支持的版本),如下所示:

conda create -n r_spark r=3.6 r-essentials r-irkernel openjdk=8 r-sparklyr
source activate r_spark
R
> IRkernel::installspec(user=TRUE, name="rspark", displayname="R (Spark)")

当我在此环境中在终端 session 中运行 R 时,一切正常:

R
> system("java -version")
openjdk version "1.8.0_152-release"
OpenJDK Runtime Environment (build 1.8.0_152-release-1056-b12)
OpenJDK 64-Bit Server VM (build 25.152-b12, mixed mode)
> library(sparklyr)
> sc <- spark_connect(master="local")
* Using Spark: 2.3.3
Registered S3 method overwritten by 'openssl':
method from
print.bytes Rcpp
> spark_disconnect(sc)
NULL
>

但是,当我在笔记本中使用完全相同的“R (Spark)”内核执行相同操作时,它使用 Java openjdk 版本 11:

library(sparklyr)
sc <- spark_connect(master="local")
Error in validate_java_version_line(master, version): Java version detected
but couldnt parse version from: openjdk version "11.0.4" 2019-07-16
Traceback: [...]

此外,system("java -version", intern=TRUE) 从笔记本中返回空结果。

如何告诉笔记本使用其环境中的 Java 版本?

最佳答案

@merv 的评论让我走上了正轨:

在环境中终端的 R 控制台中使用 Sys.getenv("JAVA_HOME") 获取当前 JAVA_HOME 路径:"/path/到/你的/java”

在具有相应环境内核的笔记本中,使用 Sys.setenv(JAVA_HOME="/path/to/your/java") 即可!

关于java - 如何在 Jupyter Notebook 内的 conda 环境中使用特定的 Java 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58877431/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com