2014-10-26 2 views
9

Ich baue R-Paket. Kürzlich habe ich mehrere Funktionen in R/allFunctions.R gelöscht und umbenannt. Ich hatte vorher der Lage gewesen, automatisch Namespace zu aktualisieren, aber aus irgendeinem Grund, ich bin jetzt nicht in der Lage zu sein, und einige Fehler erhalten, wie folgt:Gebäude R-Paket Fehler: Objekte als Exporte aufgeführt, aber nicht in Namespace

library(packageName) 
library(roxygen2) 
library(devtools) 
install() 
ERROR: loading failed 
* removing ‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/packageName’ 
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/packageName’ 
Error: Command failed (1) 
document() 
Updating packageName documentation 
Loading packageName 
Warning message: 
In setup_ns_exports(pkg, export_all) : 
    Objects listed as exports, but not present in namespace: functionOne, functionTwo 

Ich sehe, dass klar ich einige Objekte, die im Namensraum nicht vorhanden sind das sind als Exporte aufgeführt. Ich habe jedoch alle @export in der allFunctions.R-Datei entfernt. Ich sehe in NAMESPACE, dass einige neu benannte Funktionsnamen nicht vorhanden sind, und dass einige alte (seitdem umbenannte) Funktionsnamen noch vorhanden sind. Ich könnte es von Hand ändern, aber ich weiß, dass das gefährlich ist und diese schlechten Techniken vermeiden wollen.

Wenn Sie irgendwelche Ideen haben, lassen Sie es mich bitte wissen! Vielen Dank.

+0

Danke @RichardScriven. Ich habe versucht, zu bauen ("../ package"), und bekam die folgende Fehlermeldung: –

+1

Fehler bei namespaceExport (ns, Exporte): undefined Exporte: FunctionOne, FunctionTwo Fehler: Laden fehlgeschlagen Ausführung gestoppt ERROR: Laden fehlgeschlagen * Entfernen von '/ private/var/folders/vn/lhzbs8ds6xbg965nnfcj6ftm0000gn/T/RtmpK8kfl1/Rinst839556135808/Paketname' ---------------------------- ------- Fehler: Paket Installation fehlgeschlagen Fehler: Befehl fehlgeschlagen (1) –

+3

löschen Sie die Namespace-Datei und lassen Sie roxygen machen – rawr

Antwort

4

Ich habe gerade eine ähnliche Sache gemacht: Ich habe 3 exportierte Funktionen aus R/allFunctions.R gelöscht und Devtools :: document() ausgeführt. Das gab mir die folgende Fehlermeldung:

Warning message: 
In setup_ns_exports(pkg, export_all) : 
    Objects listed as exports, but not present in namespace: getAccounts, getClients, getDeposits 

ich das Problem manuell gelöst, indem den 3-Export() Funktionen aus der Namespace-Datei zu löschen.

+2

Ich glaube, dass, obwohl Sie die Warnmeldung erhalten, 'Devtools :: document()' das Problem beheben. Ich löschte eine Funktion, lief 'devtoools :: document()', bekam diese Warnung, führte 'devtools :: document()' erneut, keine Warnung mehr. – jtr13