R包开发的设置(流程和构建链)

时间:2015-03-31 14:38:59

标签: r package build-process

我试图找出使用RStudio(和Windoze)的R开发过程应该如何以防我想要自定义现有的包供个人使用。所以,让我们说有一个包X(我用cran.rforge中的packages.install来安装)和函数y,我在函数z中使用它(在某些文件中〜/ myRFile.R)。

所以我要做的是以下内容:

  1. 删除已安装的软件包(使用remove.packages(X))
  2. 从rforge / github等获取源并将其保存在〜/ downloadedPackage中。
  3. 现在我开始挣扎下一步我要做的事了。将现有文件(〜/ myRFile.R)链接到〜/ downloadedPackage中的源的最佳方法是什么?我知道我可能弄清楚哪个R文件函数是y并使用source加载它("〜/ downloadedPackage / theFileWithFunctionY.R")但我无法想象这是正确的方法,或者是吗?我想有一种方法可以加载" /"来源"所有的代码一次?我还尝试过只使用

    install.packages("〜\ downloadedPackage&#34)

    库(downloadedPackage)

  4. 但这只是给了我"安装包...警告包不可用(作为R的二进制包...)"。此外,我假设每次在开发过程中进行小的更改时安装软件包都是次优的(例如,我想在安装代码后调试代码会更加困难)。

    因此,我并不是在寻找有关如何构建软件包的分步说明,而是关于如何设置最佳流程和工具链的大局,以便

    1. 修改
    2. 测试
    3. 重装
    4. 现有的R包。

      顺便说一句:我最熟悉Java buildtools / process,以防通过引用另一组buildtools(javac,ant,maven,gradle等)来解释它。

1 个答案:

答案 0 :(得分:1)

三种解决方案:

  1. 您可以{/ 3}}

    install.packages(path_to_file, repos = NULL, type="source")
    
  2. 您可以通过RStudio安装它。在RStudio中执行File-> New Project,并将该目录作为R项目打开。单击“构建和重新加载”(在“构建”选项卡下)将重新安装该程序包(有关详细信息,请参阅install an R package from source)。在RStudio中打开它会使“更改/重新安装”循环变得非常简单。

  3. 如果您要加载包而不安装它,可以安装here,然后使用devtools package

    devtools::load_all("~/downloadedPackage")
    

    这样做的好处是比重新安装快一点。