2014-10-26 18 views
9

Sto costruendo il pacchetto R. Recentemente, ho cancellato e rinominato diverse funzioni in R/allFunctions.R. Ero stato in precedenza in grado di aggiornare automaticamente NAMESPACE, ma per qualche ragione, io non sono in grado di ora, e ottenere alcuni errori nel modo seguente:Errore pacchetto Building R: oggetti elencati come esportazioni, ma non presenti nello spazio dei nomi

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 

vedo che chiaramente io ho alcuni oggetti che non sono presenti nel namespace che sono elencati come esportazioni. Tuttavia, ho rimosso tutto @export nel file allFunctions.R. Vedo in NAMESPACE che alcuni nomi di funzione appena nominati non ci sono, e che alcuni nomi di funzioni vecchie (dal nome rinominato) sono ancora lì. Potrei cambiarlo a mano, ma so che è pericoloso, e voglio evitare quelle povere tecniche.

Se avete qualche idea, fatemelo sapere! Grazie.

+0

Grazie @RichardScriven. Ho provato build ("../ packageName"), e ottenuto il seguente errore: Errore –

+1

in namespaceExport (NS, esportazioni): esportazioni indefinite: functionOne, functionTwo Errore: il caricamento non è riuscito Esecuzione fermato ERRORE: carico fallito * rimozione '/ private/var/folders/vn/lhzbs8ds6xbg965nnfcj6ftm0000gn/T/RtmpK8kfl1/Rinst839556135808/packageName' ---------------------------- ------- ERRORE: installazione del pacchetto non riuscita Errore: comando non riuscito (1) –

+3

eliminare il file dello spazio dei nomi e lasciare che roxygen lo faccia – rawr

risposta

4

Ho appena fatto una cosa simile: ho cancellato 3 funzioni esportate da R/allFunctions.R e ho eseguito devtools :: document(). Questo mi ha dato il seguente errore:

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

ho risolto il problema eliminando manualmente il 3 di esportazione() funzioni dal file namespace.

+2

Credo che sebbene venga visualizzato il messaggio di avviso, 'devtools :: document()' risolve il problema. Ho cancellato una funzione, ho eseguito 'devtoools :: document()', ho ricevuto questo avviso, ho eseguito di nuovo 'devtools :: document()', nessun avvertimento in più. – jtr13

Problemi correlati