Ich habe ein Paket für R, das mehrere JAR-Dateien enthält. Für eine bessere Wartung möchte ich die Gläser in einem separaten Paket aufteilen und die R-Quelle und zwei kleine Gläser im Hauptpaket haben.
Aber jetzt bekomme ich immer einen "NoClassDefFoundError" von rJava, wenn ich meine Funktionen anrufe.
Wie legt man den Klassenpfad für rJava in R fest?
Im Hauptpaket habe ich eine onLoad-Funktion, die die JVM mit der .jpackage-Funktion startet.
Entsprechend der Hilfe nimmt diese Funktion ein "morePaths" -Argument, zu dem ich den absoluten Pfad zu den zwei JAR-Dateien zur Verfügung stellte. Aber es wird nicht funktionieren.
Ich habe auch versucht
jar.one = paste(lib,pkg,"java","One.jar",sep=.Platform$file.sep)
jar.two = paste(lib,pkg,"java","Two.jar",sep=.Platform$file.sep)
.jinit(classpath=c(jar.one,jar.two))
Innerhalb der onLoad-Funktion.
würde Jeder Hinweis zu erkennen ist,
Martin
Versuchen: http://www.rforge.net/doc/packages/rJava/jinit.html wir sollte .jpackage anstelle von .jinit verwenden. – Martin
siehe hier http://stackoverflow.com/questions/4998825/frustration-using-rjava-to-call-a-third-party-java-jar – mut1na