重新安装r包装后,刷新sysdata.rda



我正在开发具有内部数据的R(3.3.2(中的软件包。数据通过

添加到./r/sysdata.rda
devtools::use_data(dataset, pkg = 'pkgName', internal = TRUE, overwrite = TRUE) 

在软件包中,我添加并导出了一个简单的功能:

show.r

show = function() {
  print(dataset)
)

我正在本地安装该软件包:

devtools::install(pkg = 'pkgName', 
              args = paste('--library=', installLocation, sep = ''), 
              reload = TRUE,
              local = FALSE)

最后,我可以毫无问题地致电表演:

library(pkgName, lib.loc = installLocation)
show()
# ...output as expected

当我更改 sysdata.rda中的数据时,我会遇到麻烦。无论我尝试什么,我可以从已安装的软件包中加载新数据的唯一方法是在我重新启动R。

我尝试过:

detach('package:pkgName', unload = TRUE)
unloadNamespace(pkgName)
remove.packages(pkgName, lib = installLocation)

我还确认了源位置中的数据已更新:

load(sysdata.rda) # looks good

内部sysdata在哪里被缓存,我如何清除或至少强制刷新?

您需要在sysdata.rda的干净r会话中进行记录并安装软件包,以适当刷新。

回答我现在遇到的问题,并在寻找解决方案时到达此页面。

最新更新