原文见:

Rjava的安装和介绍​www.bioinfo.online

官方文档:https://www.rforge.net/rJava/

一、介绍

rjava是一个简单的R-to-Java的接口。rjava通过JNIRjava之间建立了桥梁。从而可以在R中创建java对象,调用java方法。目前,rJava用作JGR,iPlots和JavaGD软件/软件包的一部分。

二、安装Rjava

install.packages('rJava')

三、Rjava的简单使用

调用java计算字符串长度

library(rJava)
.jinit() # this starts the JVM
s <- .jnew("java/lang/String", "Hello World!")
.jcall(s,"I","length")
# [1] 12

创建Jframe窗口

library(rJava)
.jinit() # this starts the JVM
f <- .jnew("java/awt/Frame", "Hello")
b <- .jnew("java/awt/Button", "OK")
.jcall(f, "Ljava/awt/Component;", "add", .jcast(b, "java/awt/Component"))
.jcall(f,, "pack")
.jcall(f,, "setVisible", TRUE)

四、安装可能存在的问题

问题

*** Cannot find any Java interpreter
*** Please make sure 'java' is on your PATH or set JAVA_HOME correspondingly

原因:在ubuntu root用户没有JAVA_HOME, 创建脚本, 使用root用户运行

#!/bin/bash
export JAVA_HOME="<path to jdk>"
R CMD javareconf

运行结果

Java interpreter : /home/wy/softwere/jdk1.8.0_231//jre/bin/java
Java version     : 1.8.0_231
Java home path   : /home/wy/softwere/jdk1.8.0_231/
Java compiler    : /home/wy/softwere/jdk1.8.0_231//bin/javac
Java headers gen.: /home/wy/softwere/jdk1.8.0_231//bin/javah
Java archive tool: /home/wy/softwere/jdk1.8.0_231//bin/jar
​
trying to compile and link a JNI program
detected JNI cpp flags    : -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux
detected JNI linker flags : -L$(JAVA_HOME)/jre/lib/amd64/server -ljvm
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I/home/wy/softwere/jdk1.8.0_231//include -I/home/wy/softwere/jdk1.8.0_231//include/linux     -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-AitvI6/r-base-3.4.4=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c conftest.c -o conftest.o
g++ -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o conftest.so conftest.o -L/home/wy/softwere/jdk1.8.0_231//jre/lib/amd64/server -ljvm -L/usr/lib/R/lib -lR
​
​
JAVA_HOME        : /home/wy/softwere/jdk1.8.0_231/
Java library path: $(JAVA_HOME)/jre/lib/amd64/server
JNI cpp flags    : -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux
JNI linker flags : -L$(JAVA_HOME)/jre/lib/amd64/server -ljvm
Updating Java configuration in /usr/lib/R
Done.

fortify安装_Rjava的安装相关推荐

  1. etcd 笔记(02)— etcd 安装(apt 或 yum 安装 、二进制包安装、Docker 安装 etcd、etcd 前端工具etcdkeeper)

    1. 使用 apt 或 yum 安装 etcd 命令如下: sudo apt-get install etcd 或者 sudo yum install etcd 这样安装的缺点是:安装的 etcd 版 ...

  2. vue.js安装过程(npm安装)

    一.开发环境 vue推荐开发环境: Node.js: JavaScript运行环境(runtime),不同系统直接运行各种编程语言 npm: Nodejs下的包管理器. webpack: 它主要的用途 ...

  3. linux命令安装组件,Linux安装各种组件

    [TOC] Linux安装各种组件 ============================= ## 安装JDK 官网下载最新JDK ``` http://www.oracle.com/technet ...

  4. Tomcat介绍、安装JDK、安装Tomcat

    Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发而 ...

  5. linux 源码安装e1000e,linux安装网卡e1000e

    在Intel网站直接下载的Linux驱动是e1000-5.2.52.tar.gz(版本可能会有改变),这个压缩包里面没有编译好的.o的文件,需要在Linux系统下编译之后才能使用, 因为网卡需要编译, ...

  6. linux deploy ENV 目录,手机安装linux deploy 安装和配置

    最近在淘了一款二手三星的sw-2014,正好最近正在研究智能家居.就想用它来搭建domoticz来管理,虽然手头也有一块吃灰的树莓派3b,但是觉得用树莓派搭建有点浪费,索性就用这款手机. [为什么不用 ...

  7. python3里的pillow怎么安装_“python安装pillow教程“python3.4怎么安装pil

    "python安装pillow教程"python3.4怎么安装pil python安装pillow教程2020-10-09 03:37:02人已围观 如何在python3.6中装p ...

  8. ad hoc是什么的简称_签名后的App安装时出现安装失败是什么原因?如何解决?

    相信了解过ios签名的朋友都知道,ios签名可以对App添加信任,使其能够绕过App Store的审核直接安装到ios设备上.但是有时我们在使用过程中会发现,签名后的App在安装时会出现安装失败的情况 ...

  9. 电脑能安装吗_安装暖气片有要求吗,装好的房子能安装吗?

    家用暖气片如何安装?装修好的也可以安装--其实是我们不了解采暖知识,它的安装需要科学的理论与专业的设计相结合,才能保证我们在生活中的正常取暖,下面金旗舰旗哥跟大家一起来聊一下暖气片安装的要求有什么. ...

最新文章

  1. 爬虫(beautifulSoup)
  2. WPF:仿WIN7窗体打开关闭效果
  3. Spring Cloud学习笔记-002
  4. vim-录制命令的使用
  5. wpsmac历史版本_wps mac版|wps for mac官方下载免费完整版-太平洋下载中心
  6. PHP、MySQL分库分表中间件、支持协程
  7. 干货~~牛人教你如何写好一篇高分SCI论文
  8. 有关Android Studio模拟机无法联网解决办法(傻瓜粗暴方法)
  9. AlphaZero登上Science封面:从小白开始制霸多个游戏
  10. 跳转到QQ聊天界面和QQ群界面
  11. mysql 五舍六入_四舍六入五成双(适用于MYSQL)(最大支持小数点第9位)
  12. LibreCAD环境配置
  13. Vue(三):vue基础入门
  14. 杀虫灯可以诱捕哪些害虫,菜田可以用吗?
  15. 一头扎进Shiro-自定义Realm
  16. OpenFalcon线上初步部署
  17. IC验证中的force/release 学习整理(5)研究对 reg类型信号的影响
  18. 为什么炒外汇总是不断的亏钱?
  19. 桌面路径不小心改成磁盘根目录改不回去解决方案
  20. 如何利用对象存储构建静态网站

热门文章

  1. JQuery EasyUI combobox(下拉列表框)
  2. CheckStyle及其配置的详细解释
  3. 最小二乘法(一元)推导
  4. 精通Spring Boot—— 第二十一篇:Spring Social OAuth 登录简介
  5. 工控随笔_01_西门子_安装西门子软件提示重启解决方法。
  6. 移动端适配--flexible.js
  7. 【368天】跃迁之路——程序员高效学习方法论探索系列(实验阶段126-2018.02.08)...
  8. Python 2.7:字符串乱码问题的解决
  9. 如何在MyEclipse中添加 用户自定义类库 以及将自定义的类库加入工程的加载目录...
  10. Jenkins执行批处理文件失败