即使在没有错误的情况下安装rocker/tidyverse:3.3.2
r-cran-rjava
,也可以在r-cran-nloptr
内部进行操作,但是R中缺少软件包rJAva
和nloptr
。
看下面的Docker文件:
FROM rocker/tidyverse:3.3.2
RUN printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
RUN apt-get update && apt-get install -y --no-install-recommends apt-utils
RUN apt-get -y update && apt-get install -y \
default-jdk r-cran-rjava r-cran-nloptr libssh2-1-dev
RUN R -e "library('rJava')" # Error in library("rJava") : there is no package called ‘rJava’
RUN R -e "library('nloptr')" # Error in library("nloptr") : there is no package called nloptr
谢谢
最佳答案
这是因为您正在安装为R的最新稳定版本准备的软件包二进制文件,但已安装的R是较旧的版本,而未安装要使用的R版本的软件包。