Java调用R——rJava的安装和配置
rJava是Java通过JRI调用R所要安装的包。配置起来比较麻烦,我参考网上进行配置,使用rJava包中example里面的示例测试,控制台显示:
Cannot find JRI native library! Please make sure that the JRI native library is in a directory listed in java.library.path.
java.lang.UnsatisfiedLinkError: D:\developmentTools\R-3.1.1\library\rJava\jri\jri.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
意思是JVM不能加载32位的 .dll文件。我就反复修改,最终经过多次尝试终于成功了。下面介绍我是如何安装和配置的。
1.下载rJava.
下载和安装rJava很简单,只需要,在R中输入install.packages("rJava"),然后选择需要安装的镜像即可。如下图:

我选择的是China(Beijing 2)。选择后就会自动安装了。
下载完成后在R主目录的library目录中会多出一个rJava目录,这就是刚才下载的rJava包。
2.配置环境变量:
首先新建系统变量 变量名为R_HOME, 变量值为安装R的主目录,例如我的是:D:\developmentTools\R-3.1.1,这个需要根据自己的目录进行修改。然后在CLASSPATH变量中直接添加 %R_HOME%\library\rJava\jri\JRI.jar; 注意多个变量要用分号隔开, 下面的步骤很关键。在下载的rJava包中同时包含32位和64位的文件,要根据你的JVM是32位还是64位来选择。如下图:

jri文件夹中有i386(表示32位)和x64(表示64位)两个文件夹,里面分别放置的是32位和64位的jri.dll。jri文件夹中也有jri.dll这个文件,但其默认是32位的(可根据大小区分,64位的更大),如果你JVM是64位的,则需要用x64文件夹中的同名文件替换掉它。我的JVM是64位的,网上很多都是按照32位来讲的,所以我一直没成功。替换后成功了。然后再配置Path变量,在path变量中添加: %R_HOME%\bin\x64;%R_HOME%\library\rJava\jri; 。(如果你JVM是32位的, x64改为i386)
3.测试。
可使用rJava包中的示例进行测试,注意要添加JRI.jar, JRIEngine.jar, REngine.jar三个包文件。
Java调用R——rJava的安装和配置的更多相关文章
- Rsession让Java调用R更简单
Rsession让Java调用R更简单 R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒. ...
- JAVA 调用 R 语言
1 简介 R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要.关于整合,一方面,R中可以创建JAVA对象调用JAVA方法,另一方面,JAVA中可以转换R的数据类型调用R的 ...
- Java调用R语言
R是统计计算的强大工具,JAVA是做应用系统的主流语言.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的系统. 一.Rserve(远程通信模式) Rserve是一个基于TCP/ ...
- Java 调用R 方法
JAVA 调用 R 语言 1 简介 R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要.关于整合,一方面,R中可以创建JAVA对象调用JAVA方法,另一方面, ...
- JAVA调用R脚本
0 前言R是一种非常方便易用的绘图.统计分析.ML算法设计方面的脚本语言.实际中有这样一种场景:算法工程师用R搭建了机器学习算法模型,想用于javaweb之中但是又不想重新用java写一遍算法模型,那 ...
- JAVA 调用 R 语言之升华篇
由于项目的需要,最近做了一个javaWeb调用R的组件,在这里,我把自己走的一些弯路给大家总结一下: 一.选取什么插件作为java和R之间的通信? 1. 在传统的方式中,大致可以分为两类:一类是JRI ...
- JAVA调用R
JAVA很适合开发应用系统,但是数学建模和计算能力非其所长,如果该系统需要进行大量的统计或者优化的计算,调用R是一种很好的方式.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的 ...
- Java调用R(二)_JRI
推荐使用.相比RServe更灵活,效率更高. 基本步骤 1. R中需要安装rJava包. 2. 系统变量Path加上 C:\Program Files\R\R-3.0.1\bin\i386;C:\ ...
- Java调用R(一)_Rserve
最近做项目涉及到R总结一些Java本地调用R和Java web项目中调用R的基本步骤 1. R中安装Rserve包 2. 系统变量Path加上 C:\Program Files\R\R-3.0.1 ...
随机推荐
- Cortex-M3学习日志(三)-- 外部中断0
无论是哪款单片机应该都有对应的中断的功能,中断在嵌入式系统的地位毋庸置疑.LPC1768微处理器包括4个外部中断,分别是EINT0.EINT1.EINT2.EINT3对应的引脚分别是P2.10~P2. ...
- Delphi通过IE窗口句柄获取网页接口(IWebBrowser2) good
主要用到的是MSAA(Microsoft Active Accessibility) 函数:ObjectFromLResult,该函数在动态链接库 oleacc.dll 中定义. uses SHDoc ...
- GDOI2015酱油记
GDOI2015酱油记 今年的GDOI在北江举行,比赛前一天坐了5小时的车才到,幸好忍住了,没有在车上吐. Day 1 刚到电教楼,看完考室后,第一时间找厕所,结果发现只有一楼有厕所,坑爹我的考室在三 ...
- c reference
1,函数:strdup复制字符串函数原型定义:char * strdup(const char *s);函数说明:strdup()会先用maolloc()配置与参数s字符串相同的空间大小,然后将参数s ...
- uva 301 Transportation 铁路公司的阳谋 纯dfs暴力
题目比较难理解. 给出铁路的容量和站点数,以及几笔订单,要求算出如何盈利最大. 咋一看想贪心,但无法确定是最优解啊. 于是用dfs做,就两种状况,选与不选,先开一个每个站点的当前人数数组,假设要选,然 ...
- 2014 Web开发趋势
本文翻译自:http://www.pixelstech.net/article/1401629232-Web-design-trends-for-2014 如今,已然到了Web横行的时代.越来越多的资 ...
- poj2728 Desert King --- 01分数规划 二分水果。。
这题数据量较大.普通的求MST是会超时的. d[i]=cost[i]-ans*dis[0][i] 据此二分. 但此题用Dinkelbach迭代更好 #include<cstdio> #in ...
- SQL中日期格式转换为年月日
)
- Matlab中用内建函数代替for循环
在使用matlab进行矩阵计算的时候,经常会遇到要使用for循环的情况.但其实很多操作可以用内部的一些函数代替. bsxfun, arrayfun, cellfun, spfun, structfun ...
- ORACLE查看当前连接用户的权限信息或者角色信息
关于当前用户的相关信息,可以通过如下语句找到: SQL> select * from all_objects where object_name like 'SESSION%'; OWNER O ...