我正在它自己的服务器上运行Rstudio。Java安装了良好的java_home和bin。安装了r。安装了rJava。
尝试执行命令:library("rJava")但与libjvm.so有问题,请按照Rstudio命令执行--我用根执行了sudo R CMD javareconf。
下面是我的javareconf的输出:
Java interpreter : /home/scoremd/jdk1.7.0_03/jre/bin/java
Java version : 1.7.0_03
Java home path : /home/scoremd/jdk1.7.0_03
Java compiler : /home/scoremd/jdk1.7.0_03/bin/javac
Java headers gen.: /home/scoremd/jdk1.7.0_03/bin/javah
Java archive tool: /home/scoremd/jdk1.7.0_03/bin/jar
NOTE: Your JVM has a bogus java.library.path system property!
Trying a heuristic via sun.boot.library.path to find jvm library...
Java library path: $(JAVA_HOME)/jre/lib/amd64:$(JAVA_HOME)/jre/lib/amd64/server
JNI linker flags : -L$(JAVA_HOME)/jre/lib/amd64 -L$(JAVA_HOME)/jre/lib/amd64/server -ljvm
JNI cpp flags : -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux似乎找到java库路径有问题..。但是我的java运行得很好,R也很好。
我没有收到来自RStudio支持和社区的任何解决方案(告诉我这么问……)。
发布于 2021-10-05 23:50:56
我的Centos服务器上安装了rstudio服务器。有几个用户使用rstudio,我们决定将R从3.6升级到4.0。
升级后:
配置:错误:无法编译简单的JNI程序。详情请参见config.log。确保安装了并在R中正确注册,如果有疑问,请将“”作为root重新运行。错误:包“rJava”配置失败
运行install.packages('rJava')的
路径是错误的一样。因此,我们尝试将"JAVA_HOME“变量设置为安装Java的相同路径(通过在yum中搜索已安装的包)。这并没有解决这个问题。
--我的解决方案--我看到当所有用户运行4.0时,root运行的是3.6VersionR。这是因为我在另一个目录中安装了4.0。R4.0的目录恰好是用户首先找到的。但是对于根用户..。它首先找到R3.6的路径。因此,我在根用户的$PATH变量中设置了4.0文件夹的路径,以便在找到R3.6之前找到version 4.0
出口PATH="/usr/local/bin:$PATH"
然后,我以那个用户的身份运行R,运行“”,安装了软件包,所有用户都很高兴并再次工作。
(免责声明,我不是一个经验丰富的linux管理员,可能有一个更好的解决方案运行不同的R版本)
发布于 2013-12-25 03:03:18
我已经有一段时间没有使用rJava了,它是在Windows上运行的,但我有一些注释可能会对您有所帮助:
Process Explorer确认jri.dll为loaded))。
在执行library(rJava)时,R进程加载jvm.dll
在您的情况下,用libjvm.so替换libjvm.so,用与您相关的任何.so文件替换jri.dll。
https://stackoverflow.com/questions/9772527
复制相似问题