突然间,我无法使用
install.packages
在 R 中安装更多软件包。对于我想要安装的任何软件包(包括随机字符),我收到以下错误消息:
> install.packages('tensorA')
Error in install.packages : dbus: Call failed: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/dbus/service.py", line 658, in _message_cb (candidate_method, parent_method) = _method_lookup(self, method_name, interface_name) File "/usr/lib/python3/dist-packages/dbus/service.py", line 248, in _method_lookup raise UnknownMethodException('%s is not a valid method of interface %s' % (method_name, dbus_interface))dbus.exceptions.UnknownMethodException: org.freedesktop.DBus.Error.UnknownMethod: Unknown method: available is not a valid method of interface org.r_project.linux1.PackageManager
这是我的会议信息:
R version 4.3.2 (2023-10-31)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.6 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3; LAPACK version 3.9.0
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=de_DE.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=de_DE.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=de_DE.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C
time zone: Europe/Berlin
tzcode source: system (glibc)
attached base packages:
[1] stats graphics grDevices datasets utils methods
[7] base
loaded via a namespace (and not attached):
[1] compiler_4.3.2 cli_3.6.1 tools_4.3.2 rstudioapi_0.14
[5] bspm_0.5.1 rlang_1.1.0
任何提示表示赞赏!
该操作正在尝试联系
bspm
服务(这似乎是一个帮助服务,使用操作系统包管理器 – dnf、apt、pacman 等 – 来安装 R 包)。这恰好是通过 D-Bus 完成的,但错误消息实际上与 D-Bus 无关;它来自 bspm
本身。
该消息表明 R 尝试调用
available()
函数,该函数在服务中不存在。根据 Git 提交日志,该功能是在 bspm 的 0.3.10.1 版本中添加的。
使用busctl status org.r_project.linux1.PackageManager
(有或没有
--user
,我不确定)来查找当前提供此服务的进程(PID和命令行)。很可能 bspm 已升级,但旧版本仍在运行;杀死进程并让它自动重新启动。(您也可能以某种方式拥有两个版本的 bspm – R 正在尝试使用 0.5.1,它期望 available()
方法可用,但 D-Bus 设置为自动启动更旧的版本。)