2012-01-22 22 views
7

Paketimi otomatik olarak dönüştürmek için roxygen2 kullanan bir komut dosyası yazıyorum. Ben paketi hazırlamak ve kurmak için daha büyük bir komut dosyasının parçası olabilir, ancak bazı nedenlerle Rscript ile çalışmasını sağlayamıyorum, böylece çalıştırılabilir olmasını isterdim. Ben interaktif R oturumu başlatmak veya eğerRScript toplu iş dosyasından roxygenize işlevi çağrılamıyor

#!/usr/bin/env Rscript 
library(roxygen2) 
roxygenize('.', copy=FALSE) 

Bu doğru çalıştığından ben R CMD BATCH kullanarak kodu gönderirseniz: Burada

kodudur. Ancak, komut dosyasını doğrudan Rscript aracılığıyla bir yürütülebilir dosya olarak çalıştırırsam (ve komut dosyasının geçerli dizinde veya bölmede olup olmadığına bakılmaksızın hatayı alıyorum) bu çıktıyı ve hatayı alıyorum. setPackageName baz Ar olduğu gibi

bin/roxygenize.R 
Loading required package: digest 
Warning message: 
package 'roxygen2' was built under R version 2.13.2 
Error in parse.files(r_files) : could not find function "setPackageName" 
Calls: roxygenize -> parse.files 
Execution halted 

görünüyor, bu yüzden orada değil neden çözemiyorum. Ayrıca, Rscript'i başka bir çok durumda kullanıyorum ve bunun başarısız olduğu tek yer olduğu görülüyor.

Herhangi bir yardım çok takdir edilmektedir.

+5

Bu, rokside bir hataydı. Bir sonraki sürüm ortaya çıkana kadar, yöntemleri ve araçları açıkça yükleyerek etrafta çalışın. – hadley

+0

Teşekkürler, Hadley. Beni neden deli ettiğini biliyordum. –

cevap

5

roxygen2'u yüklemeden ve roxygenize() numaralı telefonu arayarak methods ve utils paketlerini açıkça yükleyin.

#!/usr/bin/env Rscript 
library(methods) 
library(utils) 
library(roxygen2) 
roxygenize('.', copy=FALSE) 
+0

Bir çekicilik gibi çalıştık, teşekkürler! – dardisco

İlgili konular