在 R 和 rJava 中使用 Travis [英] Using Travis with R and rJava
问题描述
我有一个依赖于 rJava 的 R 包.我正在使用 travis 的 R 支持
I have an R package which depends on rJava. I am using the R support for travis
language: r
sudo: required
warnings_are_errors: true
r_github_packages:
- keboola/redshift-r-client
但它失败并出现错误:
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/usr/local/lib/R/site-library/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
完整日志:https://travis-ci.org/keboola/provisioning-r-client/builds/61021633
我尝试添加:
apt_packages:
- openjdk-7-jre
或
jdk:
- oraclejdk8
但似乎没有任何效果.
language: r
sudo: required
apt_packages:
- r-cran-rjava
解决方案 2:
language: r
sudo: required
apt_packages:
- openjdk-7-jre
before_install:
- export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre
- export PATH=$PATH:$JAVA_HOME/bin
- export LD_LIBRARY_PATH=/usr/lib/jvm/java-8-oracle/lib/amd64:/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server
- sudo R CMD javareconf
推荐答案
请尝试通过apt-get
直接安装r-cran-rjava
.
这里有许多与 r-cran-rjava
相关的 SO 问题,因此浏览这些问题也可能有所帮助.这个包的 Build-Depends
当前是 default-jdk
,Depends
在 openjdk-7-jre | 上.默认-jre
.不过,依靠软件包应该可以帮助您.
There are a number of questions here on SO related to r-cran-rjava
so glancing at those may help too. The Build-Depends
for this package currently are default-jdk
and the Depends
is on openjdk-7-jre | default-jre
. Relying on the package should help you there though.
FWIW 我仍然使用以前的 Travis 设置,因为我发现它加载速度更快.
FWIW I still use the previous Travis setup as I find it loads faster.
这篇关于在 R 和 rJava 中使用 Travis的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!