2010-12-08 257 views
9

我剛試過Roxygen包。在R中,我可以運行Roxygen Vignette中的示例。但在命令行中,R CMD roxygen未被識別爲有效的命令。當我運行R CMD --help時,我可以看到所有​​命令項但不是roxygen。任何人都可以幫我解決這個問題嗎?是否需要除install.packages("roxygen")以外的其他附加安裝步驟?我使用R 2.12.0的Windows 32和Rtools環境。謝謝。R CMD roxygen未被識別

+1

我也在windows上,但是我使用了cygwin Bash shell。如果我運行R CMD roxygen.sh(注意,.sh),它可以工作。但是,如果我使用Windows命令行(當然不是,它是一個shell腳本...),它就不起作用。 – 2010-12-08 18:28:36

回答

2

我剛剛跑到這一天。我以管理員身份安裝,並修復它。以管理員身份運行R,然後按正常方式執行install.packages,然後重新啓動R,因爲您不想以管理員身份運行它。

+0

剛剛做了全新的安裝,但似乎並沒有做到這一點,對不起,我不知道我做了什麼才能使它工作。 – 2010-12-08 16:33:39

+0

我在Ubuntu有這個問題,不得不'sudo R'然後安裝包。 – 2010-12-08 16:48:40

12

如果我回想起來,您必須從源代碼安裝軟件包,以便他們能夠爲R CMD提供其他命令。這是因爲安裝新的R CMD命令有點破解 - 它需要劫持配置腳本或Makefile並讓它們將文件複製到R bin文件夾。從二進制文件安裝軟件包只需簡單地解壓縮一個存檔,configuremake永遠不會運行。

因此請嘗試install.packages('roxygen', type='source')。在Windows上,您需要先安裝RTools才能使用。

0

我在Windows上測試過。 R CMD %R_home%\bin\roxygen.sh作品。 ,但在DOS命令下都不能使用R CMD roxygen.shR CMD roxygen。雖然.sh已關聯到sh.exe%R_home%\bin\位於系統路徑中。 與R CMD INSTALLinstall.packages(type='source')相同。

1

這是一種解決方法,我發現它在Windows中的命令行(DOS)中與roxygen2一起使用非常有用。大部分材料都是從here中借用的。

與內容創建文件roxy.R

library(methods) 
library(utils) 
require(roxygen2) 
roxygenize("myPackage") 

(或者你使用的是與roxygen任何參數)。

然後創建批處理文件,其內容f.bat:在命令行

Rscript roxy.R 

然後運行f

> f 

注:

確保Rscript.exe在您的路徑。右鍵點擊'我的電腦',然後選'屬性','高級系統設置'(左邊菜單),然後'高級'選項卡'環境變量' '按鈕,'系統變量','路徑'。)