- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在最新版本的 R(3.4.1)、Mac (10.12.5) 和 Java VM(1.8.0_131、x86_64:) 中遇到了 rJava 的问题
问题:
我试着按照这个指南去做
scottdhoover.wordpress.com/2013/03/05/a-basic-rjava-example/
能够在 R 中运行 rJava。
来自 r 的一些代码:
library(rJava) .jinit("") .jclassPath() [1] "/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/java"
s <- .jnew("java/lang/String", "Hello World!") .jcall(s, "I", "length") [1] 12
这实际上是有效的..但是当我尝试使用我的文件时:
.jaddClassPath("/Users/Camilo/Desktop/20170711_Java2R") .jclassPath() [1] "/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/java" "/Users/Camilo/Desktop/20170711_Java2R"
myExchange <- .jnew("myExchange") Error in .jnew("myExchange") : java.lang.ClassNotFoundException
其中文件 myExchange.java 与指南中的相同,位于桌面的文件夹中。
我做了什么:
基本上我尝试从 R 安装 rJava 但没有成功。然后我按照两个指南从源代码加载 R 中的包 rJava
我遵循了这个指南:
https://github.com/snowflakedb/dplyr-snowflakedb/wiki/Configuring-R-rJava-RJDBC-on-Mac-OS-X (为了能够加载 rJava)
哪里都有
R CMD javareconf
/usr/libexec/java_home -V
看起来应该是这样。
为了摆脱人们通常遇到的 OpenMP 问题,我遵循了这个指南:
http://thecoatlessprofessor.com/programming/openmp-in-r-on-os-x/#clang-before-3-4-0 (摆脱所有人都有的 OpenMP 问题)。
最后我使用这段代码创建了一个符号链接(symbolic link)
sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
而且我能够从 R 安装库。
但是!当我从终端尝试时,出现此错误
ld: library not found for -lomp
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libjri.jnilib] Error 1
make[1]: *** [src/JRI.jar] Error 2
make: *** [jri] Error 2
ERROR: compilation failed for package ‘rJava’
所以我想:库或符号链接(symbolic link)也必须丢失..但没有像 llvm 中那样的文件(已在 llvm 中用 ld: library not found for -lomp 解决)
我知道错误“ClassNotFoundExceptions”可能与 PATH 有关,但应该没问题,因为一开始就声明了。
顺便说一句,我还检查了看起来像这样的 .R/Makevars 文件
CC=/usr/local/clang4/bin/clang
CXX=/usr/local/clang4/bin/clang++
LDFLAGS=-L/usr/local/clang4/lib
有什么解决办法吗?提前致谢!我希望这是清楚的。
最佳答案
对我来说,解决方案是安装 https://github.com/coatless/r-macos-clang并添加链接
sudo ln -s /usr/local/clang4/lib/libomp.dylib /usr/local/lib/libomp.dylib
在 R CMD javareconf
之前,我取消设置 JAVA_HOME
。
关于java - 使用 OS Sierra 在 R(3.4.1) 中加载 rJava,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45051275/
由于“rJava”的加载问题,我在加载“Deducer”包时遇到问题。 “rJava”的安装似乎正确完成,但在调用它加载时却失败了。 拜托,任何人都可以阐明一些智慧吗? :) 错误:.onLoad 在
这周我有时间使用与 Java 相关的包。我终于让我的 RWeka 工作了(参见 HERE ),但现在我遇到了 rJava 问题。 包似乎加载正常,但当我加载库时,我得到以下信息: Error in g
为什么 rJava 需要安装整个 JDK 而不仅仅是 JRE? (jvm.dll 在 JRE 中可用) 让我们假设 jvm.dll 的路径和所有其他环境变量都已正确设置。 最佳答案 rJava 包不需
在我的 java 类中,我编写了 3 个测试函数,如下所示: public void try2dStringArray(String[][] arr) { System.out.println
我目前正在开发 R 包以在 R 中集成 java 代码。但是,我在尝试正确调用 java 类方法时遇到问题。目前我已经独立开发了一个java程序,编译成class文件,然后打包成jar文件。我的代码示
我无法在 R 上使用 rjava 解决我的问题。 当我安装 rJava 包并需要它时,我没有任何问题。 install.packages("devtools") install.packages("r
我不是 Java 程序员。我编程 R 和 C++。我有一些想要包含在 R 包中的 Java 代码。该程序的基本原理是: 从标准输入读取数据。 运行 MCMC 链。 输出到文件。 我想将它转换为 R,在
使用 install.packages("rJava") 命令安装 rJava 时,出现以下错误: checking Java support in R... present: interpreter
无法在ubuntu中安装rjava包,R版本是3.1。安装jdk i.7。请分享R的java配置的确切路径。我已经尝试过javareconf -e来设置rjava的env。 以下是 rJava 安装后
我一直在玩 rJava 包,但由于 rJava 似乎不了解 Java 泛型类型,因此我很难创建具有泛型类型参数的 java 对象。如果我有一个像这样的 java 类: public class A {
我正在尝试安装 rJava 以在运行 Linux 的 super 计算机的服务器上执行 MaxEnt(Dismo 程序包)。所有其他包都已成功,但 rJava 继续出错。 我遵循了这个 thread
我在 ubuntu 12.4 server 上使用 rstudio与 r 3.1.1 . rJava 安装成功。但无法加载 rjava 库。我正在使用“rstudio”作为用户。 Loading re
我正在使用 xlsx 包创建工作簿、工作表,将数据写入工作表,然后保存工作簿。但是,当我多次重复这组操作时,我开始出现错误消息: >Error in .jcheck(silent = FALSE) :
Rstudio 的编织按钮无法编织包含 rJava 包的 rmarkdown (Rmd) 文件。但是,如果我使用 rmarkdown::render() ,相同的 Rmd 文件渲染成 html 没有问
我一直在努力解决这个问题。当我从 R 安装 rJava 时,它需要 Java 1.6 而不是 1.8。我使用的是 MAC OS 10.8.5,这些是我已经完成的步骤。 我已经安装了 R。 我的机器上有
我正在运行 RSTudio 版本 1.1.442 和 R3.5。当我尝试加载 rJava 时,出现以下错误; library(rJava) Error: package or namespace lo
这个问题困扰了我一个星期了。我已经从运行在 Ubuntu 服务器 14.04 上的 R 安装了 rJAVA。我像这样将 rJava 包安装为源代码: install.packages("rJava",
有没有办法让 rJava 打印出错误的完整堆栈跟踪,而不仅仅是异常?例如,此代码(尝试从 R 调用 Ambit2 化学信息学库) smrkMan >C" ) res .jcall("C",,"mai
我正在使用名为 CDK 的第三方库.我正在尝试使用 rJava 创建类 Bond 的实例: o1 <- .jnew("org.openscience.cdk.Atom","O") o2 <- .jne
我使用 rJava 将 Java 和 R 集成到我的项目中。 我需要在我的应用程序中加载 GWmodel R 包并通过 Java 计算距离矩阵。 这是我加载 GWmodel 并计算距离矩阵的函数: R
我是一名优秀的程序员,十分优秀!