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. 宽度的100%和auto的区别

    前段时间做项目,发现分不清width设为100%和auto的区别,实在是太水了,就查了点资料,做个总结,有不对的地方欢迎大家指出. width:auto 块级元素默认的宽度值.看一下MDN上的解释:T ...

  2. 正则表达式删除指定的HTML 标签

    1.抓取某网页的数据后(比如描述),如果照原样显示的话,可能会因为它里面包含没有闭合的HTML标签而打乱了格式,也可能它里面用了比较让人 "费解" 的HTML标签,把预订的格式搅乱 ...

  3. 配置JDK和TOMCAT

    配置JDK 1.先从官网下载最新的JDK安装包,然后安装.安装过程中会询问是否再装JRE,因为JDK中已经包含JRE,所以不必重复安装. 2.注意安装的路径名最好不要有中文或者空格出现. 3.在系统环 ...

  4. javascript 操作复选框无效

    <script type="text/javascript"> // 操作checkbox复选框按钮 var inputs = $('#article_list').f ...

  5. ASP.NET发布WebService

    1. 创建一个空的Web应用程序 2. 再添加一个Web服务 3. 在所创建Web服务内,编写一算法 4. 写完可直接运行查看结果 5. 项目->右键,发布此WebService 6.  发布至 ...

  6. 上传至应用商店以及testflight相关。

    对于一个新的开发者账号来说,首先你需要创建一个新的发布证书.这个证书只要创建一次就行了,如果以后用的话,直接拿过来用就行了,当然发布证书是和配置文件一起使用的,还有就是关于p12,就是用创建证书的电脑 ...

  7. iOS-RunLoop,为手机省电,节省CPU资源,程序离不开的机制

    RunLoop是什么?基本操作是什么? 1.RunLoop的作用 RunLoop可以: 保持程序的持续运行 处理App中的各种事件(比如触摸事件.定时器事件.Selector事件) 节省CPU资源,提 ...

  8. 微信(一) 获取openid 网页授权 C# WeChatHelper

    用.Net开发微信的时候第一步就是获取微信的网页授权,获取openid. 自己做个总结,以后也好用,这里只提供了获取openid的接口,后续程序有待开发 using System; using Sys ...

  9. Quartz 第六课 CronTrigger(官方文档翻译)

    CronTriggers使用的频率比SimpleTrigger跟高.如果需要schedule 中触发Job的方式类似于日历的形式而不是一个确定的是时间间隔,那就需要使用CronTrigger. 对于C ...

  10. UI2_QQ折叠-UITableViewController

    // CustomUITableViewController.h // UI2_QQ折叠-UITableViewController // // Created by zhangxueming on ...