如何恢复到早期版本的软件包?

时间:2011-06-29 00:29:53

标签: r

我正在尝试使用rrdf包在R中编写一些SPARQL查询。但是,每次尝试加载库时都会出现此错误。

Error: package 'rrdflibs' 1.1.2 was found, but == 1.1.0 is required by 'rrdf'

不确定他们为什么不将其写为>= 1.1.0。他们做了很好的编程实践吗?

1 个答案:

答案 0 :(得分:9)

转到http://cran.r-project.org/src/contrib/Archive/rrdflibs/以检索旧版本。这是一个源存档,因此您必须能够从源代码构建(通常在Linux上很容易,在MacOS上很容易,在Windows上很难;如果需要,可以使用http://win-builder.r-project.org/服务构建Windows二进制文件)。

实际上,基于对软件包的快速浏览,我认为您应该可以在这种情况下安装(即使在没有Rtools的Windows上)

download.file("http://cran.r-project.org/src/contrib/Archive/rrdflibs/rrdflibs_1.1.0.tar.gz",
   dest="rrfdlibs_1.1.0.tar.gz")
install.packages("rrfdlibs_1.1.0.tar.gz",repos=NULL,type="source")

因为包实际上并不包含任何需要编译的内容。

不了解编程实践,你必须问作者是否有某种特殊的理由这样做。 (参见maintainer("rrdf")。)也许他们知道版本不会向后/向前兼容?