fortify安装_Rjava的安装

原文见:

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

官方文档: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)

13bd05dd753f9ad5a13d11dac875354c.png

四、安装可能存在的问题

问题

*** 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.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值