我有一个取决于rjava的R软件包。我正在使用r支持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
,但似乎没有任何作用。
解决方案1:
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
有关,因此一眼也可能会有所帮助。此软件包的Build-Depends
当前为default-jdk
,Depends
在openjdk-7-jre | default-jre
上。依靠包裹应该为您提供帮助。
fwiw我仍然使用以前的travis设置,因为我发现它的加载速度更快。