在Mac上为Java 1.7编译rJava

时间:2014-09-26 14:16:12

标签: java r macos rstudio rjava

Mac OS 10.8.4, R 3.1.0, rJava 0.9.6, RStudio 0.98

我想从源代码编译rJava,以便它可以运行Java 1.7,最好是从RStudio中运行。已经阅读了许多网站,提供有关重新配置R for 1.7和设置编译器标志(how to get rJava 0.9-3 to work on OS X 10.7.4 with Oracle Java 1.7?)的建议,但是当我尝试install.packages(“rJava”,type ='source')时,我继续遇到:

...检查JNI数据类型... configure:错误:一个或多个JNI类型与相应的本机类型不同。您可能需要使用非标准编译器标志或不同的编译器来解决此问题。 错误:包'rJava'

的配置失败

非常感谢任何建议。

更新1:

从之前的帖子中,在我的〜/ .bashrc中,我设置了

export PATH =“$ PATH:$ JAVA_HOME / bin”

这让我超越了JNI错误,但现在我遇到了

make -C src JRI.jar
/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home/jre/bin/javac -target 1.4 -source 1.4 -d . ../Mutex.java ../RBool.java ../RConsoleOutputStream.java ../REXP.java ../RFactor.java ../RList.java ../RMainLoopCallbacks.java ../RVector.java ../Rengine.java ../package-info.java
Error: Could not find or load main class com.sun.tools.javac.Main
make[2]: *** [org/rosuda/JRI/Rengine.class] Error 1
make[1]: *** [src/JRI.jar] Error 2
make: *** [jri] Error 2
ERROR: compilation failed for package ‘rJava’
* removing ‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/rJava’

其他网站建议调用“unpack200 -r -v -l”“tools.pack tools.jar”,但tools.pack似乎不再包含在jdk版本中。

任何建议都将不胜感激! 谢谢!

1 个答案:

答案 0 :(得分:1)

我希望这能回答你的问题:我在mac os x 10.10.3上,我遇到了安装其中一个需要rJava的软件包的问题。我做了以下操作,并试图从RStudio重新安装它,它工作。

sudo R CMD javareconf
sudo find /Library/Frameworks/R.framework/Resources/etc -type f -exec chmod 664 "{}" \;