У меня есть пакет для R, который содержит несколько файлов jar. Для лучшего обслуживания я хочу разбить банки в отдельной упаковке и иметь источник R и две маленькие банки в основной упаковке.
Но теперь я всегда получаю «NoClassDefFoundError» из rJava, если я вызываю свои функции.
Как установить путь класса для rJava в R?
В основной упаковке у меня есть функция onLoad, которая запускает JVM с помощью функции .jpackage.
В соответствии с этой помощью эта функция принимает аргумент «morePaths», которому я предоставил абсолютный путь к двум файлам jar. Но это не сработает.
Я также попытался с помощью
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))
Внутри функции OnLoad.
Любой намек был бы оценен,
Martin
В соответствии с этим: http://www.rforge.net/doc/packages/rJava/jinit.html мы должен использовать .jpackage вместо .jinit. – Martin
см. Здесь http://stackoverflow.com/questions/4998825/frustration-using-rjava-to-call-a-third-party-java-jar – mut1na