2010-10-02 10 views
7

Ich habe ein Skelett R-Paket:Wie wird die JAR-Datei beim Erstellen eines R-Pakets eingebunden?

lib 
jarFileHere.jar 
R 
r_code_file.R 

Die r_code_file.R versucht eine Klassendatei in jarFileHere.jar zu Referenzen:

library("rJava") 
library("rjson") 

.onLoad <- function(libname, pkgname) { 
    .jpackage(pkgname, lib.loc=libname) 
} 

.onLoad("packagename", "../lib/jarFileHere.jar") 

.jnew("com/test/ClassHere", "") 

Aber ich habe einen Fehler aufgrund java.lang.NoClassDefFoundError .

Ich war in der Lage, es zu bekommen

.jinit 
.jaddClassPath("../lib/jarFileHere.jar") 

aber die rjava docs .jinit zu verwenden, nicht explizit sagt mit zu arbeiten, weil es nicht funktioniert, wenn der Code als Paket verwendet wird.

Antwort