2013-10-08 18 views
3

我已經得到最近此錯誤消息的一部分:devtools :: load_all的數據類型()「找不到函數x」功能時,x是裝包

> load_all(file.path(.db,"R-projects","taRifx.geo")) 
Loading taRifx.geo 
Error in eval(expr, envir, enclos) : could not find function "Polygons" 

如果該文件夾是我的本地副本: https://github.com/gsk3/taRifx.geo

Polygonssp一部分,並sp被加載:

> Polygons 
function (srl, ID) 
{ 
    stopifnot(is.list(srl)) 
    stopifnot(length(srl) > 0) 
    if (any(sapply(srl, function(x) !is(x, "Polygon")))) 
     stop("srl not a list of Polygon objects") 
    if (missing(ID)) 
     stop("Single ID required") 
    if (length(ID) != 1) 
     stop("Single ID required") 
    ID <- as.character(ID) 
    stopifnot(nchar(ID) > 0) 
    res <- .Call(Polygons_c, srl, ID) 
    res 
} 
<environment: namespace:sp> 

sp也是第e包的Depends部分在DESCRIPTION

是否有一個奇怪的範圍,阻止load_all在加載包時看到Polygons?如果是這樣,我該如何診斷/修復?

+1

試試'load_all(「taRifx.geo」,reset = FALSE)'。不知道它爲什麼起作用,所以我不能完全保證它,但它確實似乎有伎倆。 –

+0

@ JoshO'Brien工程! –

+0

請問您是否可以刪除問題或發佈解決方案? –

回答

0

看來,第一次加載時,它失敗(但加載的依賴),所以再等待一秒鐘,再試一次,一直爲我工作:

try(load_all("taRifx.geo",reset=FALSE)) 
Sys.sleep(1) 
try(load_all("taRifx.geo",reset=FALSE)) 

不知道reset=FALSE完全是必要。