zoukankan      html  css  js  c++  java
  • Java调用R(一)_Rserve

    最近做项目涉及到R总结一些Java本地调用R和Java web项目中调用R的基本步骤


    1.  R中安装Rserve

    2.  系统变量Path加上

    C:Program FilesRR-3.0.1ini386;C:Program FilesRR-3.0.1library Javajri

         系统变量Classpath加上:

    C:Program FilesRR-3.0.1library JavajriJRI.jar  

    Rserve包中可执行文件Rserve.exe copy一份到bin/i386

    3. Java 项目 或Java web项目中加入REngine.jar, RserveEngine.jar

    4. 手动开启本地的Rserve

    也可以使用封装的util/RServeOps.java通过代码控制Rserve服务的开启和关闭。

    5. Java本地测试可以运行

    运行过程中控制台,输入结果如下,与直接在RStudio中运行R脚本控制台打印结果一致。

    http://shao-fan.com/blog/use-rserve-in-java.html 文中介绍RserveLinux环境下可以正常使用,但Windows环境下还不完善,

    所有的连接都会在一个工作空间内运行。所以当客户端是多线程程序时,可能会造成线程间互相干扰。作者封装了RService

    6. Java web中通过Rserve方式调用R时,务必将REngine.jar, RserveEngine.jar放入web-root/*/lib之下。

    RConnection c;
    			try {
    				c = new RConnection();
    				REXP x = c.eval("R.version.string");
    				System.out.println(x.asString());
    				System.out.println("connected!");
    c.eval("setwd('f:/R_Stat/')");
    c.eval("dev.off()");
    				c.close();
    			}catch (Exception e) {
    				System.out.println("Error");
    				e.printStackTrace();
    			} finally {
    				System.out.println("finally");
    			}
    		}



    测试成功。

  • 相关阅读:
    youtube-VisualSfM and MeshLab workflow video-meshlab part integration
    testing_lab1
    homework2-st
    homework1-spm
    homework1-st
    just one last blog
    week 10
    week 9
    week 8
    课后题7
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3275642.html
Copyright © 2011-2022 走看看