我正在R中開發一個軟件包。我們將其稱爲mypkg
。因爲一些函數在從包中運行時行爲有所不同(我不確定爲什麼 - 但這不是問題),所以我正在編輯包中的函數,然後從命令行重新構建包。由於某種原因,給定的R實例會保留舊版本的功能,即使源已更改並重新構建和重新安裝了該程序包。我需要啓動一個新實例來查看更改。在R中開發軟件包時清除以前版本的功能
這是典型的工作流程。
- 在
mypkg.R
- 進行更改
myfunction()
在R:detach(package:mypkg); remove.packages("mypkg")
- 命令行:
R CMD INSTALL --build c:\mypkg
- 通知我,這已經被安裝到默認庫
- 在R:
library(mypkg)
- 在R中:
myfunction()
在更改之前運行先前的版本。
[接下來的三個步驟,我想避免]
- 開始一個新的R實例
- 在R:
library(mypkg)
myfunction()
按預期工作
下[R運行.2.14.1。
我在尋找如何改進這個工作流以避免啓動一個新的R實例的建議。
'detach(package:mypkg,unload = TRUE)'當然是完美的。我一直在避免學習這些新的命名空間事物。看起來好像我可以避免它不再。 – digitalmaps