2016-01-07 35 views
0

當我寫的命令提示符下這個腳本,它工作正常了shell_exec不正確的Windows

shell_exec(R CMD BATCH test.R) 

它給了我一個錯誤:「錯誤的庫(光柵):套餐‘光柵’未找到」
這沒有意義,因爲它在UNIX上的工作!

+0

該錯誤是從r?安裝r的柵格庫。 – Clay

+0

庫已安裝,我的腳本在命令提示符下鍵入時工作 – KingOfBabu

+0

嘗試設置r的任何路徑信息。這聽起來像是一個路徑問題。 – Clay

回答

2

一對夫婦possiblities:調用了shell_exec有設置不同的環境變量,所以它沒有加載正確的庫(嘗試設置R_LIBS修復它時

  1. 光柵包未安裝

  2. PHP PATH )。

  3. 嘗試使用r的絕對路徑而不是相對路徑。

上面提到R_LIBS:https://stat.ethz.ch/R-manual/R-devel/library/base/html/libPaths.html

默認R_LIBS沒有設置,並且R_LIBS_USER設置爲目錄的主目錄的 'R/R.version $平臺庫/ xy格式' (或用於CRAN OS X版本的'Library/R/xy/library'),用於R xyz

實施例從它們FAQ

"path_to_R\bin\x64\Rgui.exe" HOME=p:/ R_LIBS=p:/myRlib 
+0

如果這是因爲庫,這將無法正常工作時,我沒有使用php – KingOfBabu

+0

如何解決方法:嘗試創建一個批處理文件,其中包含您要運行的命令,然後使用php的shell_exec調用批處理文件 – Clay

+1

其實你是真的!非常感謝你:)我確實通過shell_exec安裝了這個庫,它可以工作, – KingOfBabu