1. 下载安装R-3.1.1-win.exe;

2. 在R中安装rJava

> install.packages("rJava")

3. 设置环境变量:

 PATH:D:\SoftWare\Java\jdk1..0_45\jre\bin\server;D:\SoftWare\Java\R\R311\bin\x64
CLASSPATH:D:\SoftWare\Java\R\R311\library\rJava\jri

4. 在R中调用Java 测试:

> library(rJava)
> .jinit()
> s <- .jnew("java/lang/String", "Hello World!")
> s

一切配置成功则出现:

[] "Java-Object{Hello World!}"
#加载rJava包
> library(rJava)
> search()
[] ".GlobalEnv" "package:rJava" "package:stats"
[] "package:graphics" "package:grDevices" "package:utils"
[] "package:datasets" "package:methods" "Autoloads"
[] "package:base" #启动JVM
> .jinit() #声明并赋值到字符串
> s <- .jnew("java/lang/String", "Hello World!")
> s
[] "Java-Object{Hello World!}" #查看字符串长度
> .jcall(s,"I","length")
[] #索引World的位置
> .jcall(s,"I","indexOf","World")
[] #查看concat的方法声明
> .jmethods(s,"concat")
[] "public java.lang.String java.lang.String.concat(java.lang.String)" #使用concat方法连接字符串
> .jcall(s,"Ljava/lang/String;","concat",s)
[] "Hello World!Hello World!" #打印字符串对象
> print(s)
[] "Java-Object{Hello World!}" #打印字符串值
> .jstrVal(s)
[] "Hello World!"

rJava优化过的方法调用,用$来调用方法

#同.jcall(s,"I","length")
> s$length()
[] #同.jcall(s,"I","indexOf","World")
> s$indexOf("World")
[]

5. 安装Rserve

> install.packages("Rserve")

需要使用时在R控制台下加载该包,然后输入命令Rserve(),开启服务器,就可以供客户端调用。

6. ubuntu系统启动Rserve

$ R CMD Rserve
#查看进程
$ ps -aux|grep Rserve
conan 0.0 1.2 ? Ss : : /usr/lib/R/bin/Rserve #查看端口
$ netstat -nltp|grep Rserve
tcp 127.0.0.1: 0.0.0.0:* LISTEN /Rserve

这时Rserve已经启动,端口是6311。

7. Java远程连接Rserve

刚刚启动时,使用的本地模式,如果想运程连接需要增加参数 –RS-enable-remote

#杀掉刚才的Rserve守护进程
$ kill - #打开远程模式重新启动
~ R CMD Rserve --RS-enable-remote #查看端口
$ netstat -nltp|grep Rserve
tcp 0.0.0.0: 0.0.0.0:* LISTEN /Rserve

0 0.0.0.0:6311,表示不限IP访问了。

rJava配置的更多相关文章

  1. R语言·文本挖掘︱Rwordseg/rJava两包的安装(安到吐血)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言·文本挖掘︱Rwordseg/rJava ...

  2. RHive

    R + Hive = RHive 支持原创:http://blog.fens.me/nosql-r-hive/ R利剑NoSQL系列文章 之 Hive Hive介绍 Hive安装 RHive安装 RH ...

  3. 转】R利剑NoSQL系列文章 之 Hive

    原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/3/ 感谢! Posted: Jul 27, 2013 Ta ...

  4. Java调用R——rJava的安装和配置

    rJava是Java通过JRI调用R所要安装的包.配置起来比较麻烦,我参考网上进行配置,使用rJava包中example里面的示例测试,控制台显示: Cannot find JRI native li ...

  5. R语言rJava包安装载入及JAVA环境配置

    rJava 包的安装与载入 一般文本分词的教程都会贴出: install.packages("rJava") library(rJava) 来引导我们装载rJava包,运行inst ...

  6. R,RJAVA 安装配置 详细版

    准备工作 系统必须已经安装JDK 并配置好了环境变量. 注:安装的jdk  r  以及系统 尽量保持位数一致   1.下载 R https://mirrors.tuna.tsinghua.edu.cn ...

  7. 配置RHadoop与运行WordCount例子

    1.安装R语言环境 su -c 'rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch. ...

  8. R语言成功加载rJava方法

    加载rJava的同时,要下载JAVA的JRE并且配置环境变量JAVA_HOME,因为rJava的调用需要java运行环境. 1.下载JRE 64位版本的JRE官网下载:http://www.java. ...

  9. Error : .onLoad failed in loadNamespace() for 'rJava', details: call: inDL(x, as.logical(local), as.logical(now), ...) error: 无法载入共享目标对象‘D:/Program Files/R/R-3.2.2/library/rJava/libs/x64/rJava.dll

    Error : .onLoad failed in loadNamespace() for 'rJava', details: call: inDL(x, as.logical(local), as. ...

随机推荐

  1. WPF ScrollViewer(滚动条) 自定义样式表制作 再发一套样式 细节优化

    艾尼路 出的效果图 本人嵌套 WPF ScrollViewer(滚动条) 自定义样式表制作 图文并茂 WPF ScrollViewer(滚动条) 自定义样式表制作 (改良+美化) 源代码

  2. CSS3写常用的形状

    正方形: 1 .square{ width: 100px;height: 100px; background: #E57779;}   长方形: .rectangle{ width: 200px;he ...

  3. 正确理解SQL Server的许可证(转)

    今天在论坛上看到有人讨论如果使用SQL Server作为SEPM的后台数据库,需要多少个CAL的问题:   If I do have to use SQL Server what type of li ...

  4. shell语法基础

    一.变量 1.linux大小写敏感,变量取名要注意大小写.可以通过变量名前面加$来访问变量的内容.可以通过使用read命令来将用户输入的值赋给一个变量. 2.给变量赋值时,如果字符串中包含空格,就必须 ...

  5. mongodb c++ 驱动库编译

    git clone 'https://github.com/mongodb/mongo-cxx-driver.git' scons -j2 --c++11=on --sharedclient --us ...

  6. C语言中char* 和 char []区别

    想要把丢掉的东西捡起来,还是很辛苦啊,今天我就发现,我连char* 和 char []的区别都不知道. 很多人觉得这两个定义效果一样,其实差别很大.以下是个人的一些看法,有不正确的地方望指正. 本质上 ...

  7. 【学习笔记】【C语言】逗号运算符

    逗号运算符主要用于连接表达式,例如: int a = 9; int b = 10; a = a+1 , b = 3*4; * 用逗号运算符连接起来的表达式称为逗号表达式,它的一般形式为: 表达式1, ...

  8. MVC项目页面获取控制器的信息

    页面获取控制器的名字: @{ if (ViewContext.RouteData.Values["controller"].ToString()=="Home" ...

  9. 数据库设计(字段)中的char、varchar、text和nchar、nvarchar、ntext的区别

    char.varchar.text和nchar.nvarchar.ntext的区别 1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数 ...

  10. 《JavaScript高级程序设计》心得笔记-----第二篇章

    第五章 9.Function函数 1)         函数内部有两个特殊的对象: (1)       arguments(主要用于保存函数参数,有一个属性callee,这是一个指针,指向拥有argu ...