2015-03-16 5 views
9

Ich habe diesen Fehler bei der Verwendung eines Pakets in R zum Laden von Daten festgestellt, in diesem Paket wurde Pakkage rJava verwendet.Fehler in ls (envir = envir, all.names = privat): ungültiges Argument 'envir' in R

Jedes Mal, wenn ich eine Funktion ausführen, ist der Fehler

Error in ls(envir = envir, all.names = private) : 
    invalid 'envir' argument 

Dieses Paket ohne Probleme erwiesen hat, um nur einige Umweltprobleme in meinem Computer.

wenn ich gedebuggt, fand ich, dass im letzten Prozess vor ls(envir=envir,all.names = private) die Variable envir ist NULL, die einen gewissen Wert sein sollte, aber nicht NULL, denke ich.

Nach einigen Versuchen löste ich das Problem, indem ich jedesmal rJava installierte. Und außerdem, nur wenn der Fehler auftritt, dann installiere ich 'rJava', es wird funktionieren. Wenn ich bei der ersten installiere, wird es nicht funktionieren. Also, ich denke, die Installation von 'rJava' (oder wahrscheinlich das Installieren von Paketen) wird dazu führen, dass sich einige Umgebungsvariablen ändern.

Entweder Java 7 und Java 8, einschließlich jdk oder jre sind getestet, funktioniert nicht. Und für R verwende ich die 3.1.3 R und alle Pakete sind auf dem neuesten Stand.

Im Folgenden finden Sie einige Informationen, die für die Fehlerbehebung hilfreich sein könnten.

Durch die Installation des Pakets jvm.dll needs to be added to the windows environment path: "Path" und ich habe das getan.

Meine Session ist unten dargestellt:

R version 3.1.3 (2015-03-09) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows 7 x64 (build 7601) Service Pack 1 

locale: 
[1] LC_COLLATE=Danish_Denmark.1252 LC_CTYPE=Danish_Denmark.1252 LC_MONETARY=Danish_Denmark.1252 LC_NUMERIC=C     
[5] LC_TIME=Danish_Denmark.1252  

attached base packages: 
[1] grid  stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] rgdal_0.9-1   fields_8.2-1   spam_1.0-1    raster_2.3-33   sp_1.0-17    ecomsUDG.Raccess_2.2-6 
[7] downscaleR_0.5-2  maps_2.3-9    downscaleR.java_0.0-2 rJava_0.9-6   gWidgetsRGtk2_0.0-83 cairoDevice_2.22  
[13] RGtk2_2.20.31   gWidgets_0.0-54  R.utils_2.0.0   R.oo_1.19.0   R.methodsS3_1.7.0  

loaded via a namespace (and not attached): 
[1] abind_1.4-3  bitops_1.0-6  boot_1.3-15  CircStats_0.2-4 colorspace_1.2-6 dtw_1.17-1  lattice_0.20-30 MASS_7.3-39  
[9] munsell_0.4.2  plyr_1.8.1  proxy_0.4-14  Rcpp_0.11.5  RCurl_1.95-4.5 scales_0.2.4  tools_3.1.3  verification_1.41 

Vielen Dank für jede Hilfe, die Sie anbieten können.

+0

_Environment variables_ sind ein Betriebssystemkonzept, auf das in R über 'Sys.getenv' und' Sys.setenv' zugegriffen werden kann. Sie sind im Grunde eine Zuordnung von Variablennamen zu Werten, z. 'JAVA_HOME = C: \ Programme \ Java \ jre6'. _R environments_ dagegen sind wie Listen, die jedem R-Objekt Namen zuordnen. Siehe: http://adv-r.had.co.nz/Environments.html. 'ls()' gibt einen Vektor aller Namen in einer R-Umgebung zurück, die durch das Argument 'envir' angegeben wird. Es macht keinen Sinn, 'ls (envir = NULL)' zu nennen, daher Ihr Fehler. – logworthy

+0

@logworthy Danke, aber es ist nicht ich, wer angerufen hat .... es ist im Paket .... und das Problem ist nicht über das Aufrufen von 'ls()', es geht darum, dass es kein gültiges 'envir 'finden konnte ... . – 163

+0

sollten Sie weitere Debuginformationen hinzufügen. Lesen über Debugging in R, z.B. Verwenden Sie Optionen (Fehler = Wiederherstellen), bevor Sie Ihren Code ausführen, damit Sie einen Stack-Trace erhalten. –

Antwort

1

Haben Sie Ihr Problem vollständig gelöst? Ich hatte vor ein paar Tagen ein ähnliches Problem, habe es aussortiert und möchte es mit der Community teilen. Eigentlich diese Wrapper-Funktionen (in meinem Fall Rbbg-Paket) Aufruf rJava Funktionen hatte eine Protokolldatei in Ihrem Benutzerordner unter Laufwerk C, Sie könnten diese Protokolldateien löschen, da es Ihnen ermöglicht, von der Fehlermeldung zu entkommen. enter image description here

In meinem Fall muss ich die Dateien blpjavaapi0.log.0 und org.findata.blpwrapper.0 löschen, die vom Rbbg-Paket erstellt wurden.

+0

Vielen Dank, leider arbeite ich nicht mehr am Projekt. Aber ich werde die Person informieren, die verantwortlich ist, um ihn zu versuchen, ~ – 163

Verwandte Themen