发现所有已安装的具有 Java 依赖项的 R 包(出于安全原因)

R Y*_*oda 5 java installation r package rjava

出于安全原因,我被迫在使用 R 的计算机上卸载 Java (JRE)。

我如何(轻松地:-)发现所有已安装的使用 Java 的软件包?

编辑 2021 年 12 月 14 日: log4j-log4shell-cve-2021-44228-漏洞使这个问题(和答案)变得更加有趣;-)

G5W*_*G5W 5

您可以使用它installed.packages来确定哪些包导入该rJava包。您需要告诉installed.packages包含Imports包描述中的字段,然后检查导入哪些包rJava

LIBS = installed.packages(fields=c("Imports"))
JPacks = grep("Java", LIBS[,"Imports"], ignore.case=TRUE)
LIBS[JPacks, c("Package", "Imports")]
          Package    
RWeka     "RWeka"    
RWekajars "RWekajars"
          Imports                                                                
RWeka     "RWekajars (>= 3.9.0), rJava (>= 0.6-3), graphics, stats,\nutils, grid"
RWekajars "rJava (>= 0.6-3)"
Run Code Online (Sandbox Code Playgroud)

  • _我_知道的唯一方法:-) (2认同)