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的安装和配置的更多相关文章

  1. Rsession让Java调用R更简单

    Rsession让Java调用R更简单 R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒. ...

  2. JAVA 调用 R 语言

    1 简介 R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要.关于整合,一方面,R中可以创建JAVA对象调用JAVA方法,另一方面,JAVA中可以转换R的数据类型调用R的 ...

  3. Java调用R语言

    R是统计计算的强大工具,JAVA是做应用系统的主流语言.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的系统. 一.Rserve(远程通信模式) Rserve是一个基于TCP/ ...

  4. Java 调用R 方法

    JAVA 调用 R 语言 1       简介 R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要.关于整合,一方面,R中可以创建JAVA对象调用JAVA方法,另一方面, ...

  5. JAVA调用R脚本

    0 前言R是一种非常方便易用的绘图.统计分析.ML算法设计方面的脚本语言.实际中有这样一种场景:算法工程师用R搭建了机器学习算法模型,想用于javaweb之中但是又不想重新用java写一遍算法模型,那 ...

  6. JAVA 调用 R 语言之升华篇

    由于项目的需要,最近做了一个javaWeb调用R的组件,在这里,我把自己走的一些弯路给大家总结一下: 一.选取什么插件作为java和R之间的通信? 1. 在传统的方式中,大致可以分为两类:一类是JRI ...

  7. JAVA调用R

    JAVA很适合开发应用系统,但是数学建模和计算能力非其所长,如果该系统需要进行大量的统计或者优化的计算,调用R是一种很好的方式.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的 ...

  8. Java调用R(二)_JRI

    推荐使用.相比RServe更灵活,效率更高. 基本步骤 1.  R中需要安装rJava包. 2.  系统变量Path加上 C:\Program Files\R\R-3.0.1\bin\i386;C:\ ...

  9. Java调用R(一)_Rserve

    最近做项目涉及到R总结一些Java本地调用R和Java web项目中调用R的基本步骤 1.  R中安装Rserve包 2.  系统变量Path加上 C:\Program Files\R\R-3.0.1 ...

随机推荐

  1. #pragma anon_unions, #pragma no_anon_unions

    #pragma anon_unions, #pragma no_anon_unions 这些编译指示启用和禁用对匿名结构和联合的支持. 缺省设置 缺省值为 #pragma no_anon_unions ...

  2. Sublime text3使用积累

    1.colorpicker选择颜色的. 快捷键ctrl+shift+C 2.jsFormat格式化js 快捷键ctrl+alt+f [ { "keys": ["ctrl+ ...

  3. iOS6 旋转

    iOS 6的rotation改变了很多.先来看看官方的描述  http://www.bgr.com/2012/08/06/ios-6-beta-4-change-log-now-available/ ...

  4. 微信公众号菜单openid 点击菜单即可打开并登录微站

    现在大部分微站都通过用户的微信openid来实现自动登录.在我之前的开发中,用户通过点击一个菜单,公众号返回一个图文,用户点击这个图文才可以自动登录微站.但是如果你拥有高级接口,就可以实现点击菜单,打 ...

  5. javascript if 与 if else 的一点小认识

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. CouldnotcreateServerSocketonaddress0.0.0.0/0.0.0.0:9083

    错误记录 安装的时候遇到了如下错误 Exception in thread "main" org.apache.thrift.transport.TTransportExcepti ...

  7. Codeforces Round #262 (Div. 2) B

    题目: B. Little Dima and Equation time limit per test 1 second memory limit per test 256 megabytes inp ...

  8. oracle 与sql server 部分内置函数替换

    1,trunc--convert oracle: select trunc(sysdate) from dual   输出:2016/5/24 sql server:select CONVERT(va ...

  9. const和readonly你真的懂吗?

    第二遍文章我打算把const和readonly的区别拿出来讲下,因为写代码这么久我都还没搞清楚这两者的区别,实在有点惭愧,所以这一次我打算搞清楚它. 定义 来看看MSDN的解释: readonly:r ...

  10. VS2013无法链接到TFS (转)

    VS2013无法链接到TFS(Visual studio online),错误TF31001,TF31002   TF31002: Unable to connect to VisualStudio ...