Я хочу вызвать некоторый R-код из Java, на машине Linux, на которой уже установлена R, поэтому необходим интерфейс Java/R (JRI).Интерфейс Java/R (JRI)
Однако я не уверен, как это сделать.
JRI homepage говорит, что пакет упакован в rJava. Итак, я скачал rJava-0.9.3.tar.gz с rJava Files section и распаковал его, получив (среди прочего) много исходных файлов Java (и их соответствующих классов) в папке src/java, плюс 2 JAR (JRIEngine.jar и REngine.jar) в папке inst/jri.
JRI Files section, хотя, в дополнение к указанным выше 2 баночки, также включает в себя JRI.jar и все три из этих библиотек являются более поздними, чем 2 в инст/ИСР.
Кроме того, ни один из этих 3 JAR не содержит двоичные файлы для классов, найденных в src/java, которые, как представляется, необходимы для вызова R из Java.
Выполнение «make all» в папке java/src, похоже, просто выполняет некоторые тесты, и JAR не производится.
Я ожидал бы, что все необходимые классы входят в JAR-файлы, поэтому их можно легко добавить в пути к классам и в проектах IDE (например, в Eclipse).
Как я могу добраться до этого пункта?
Спасибо за ответ. Я прочитал о команде install.packages(), но был озадачен тем, как я могу заставить результат работать с Eclipse. Теперь я запустил его и добавил пользовательскую библиотеку в Eclipse, которая указывает на 3 установленных JAR-файла. Учитывая, что Eclipse заботится о объявлениях, связанных с Java, должно ли это работать из коробки? – PNS
Нет, JAR-файлов в одиночку недостаточно - вы должны убедиться, что у вас есть настройка 'java.library.path', чтобы найти динамическую библиотеку JRI, а также установить переменные среды, требуемые R, такие как' R_HOME'. Я не использую Eclipse, поэтому я не знаю, как он обрабатывает эти настройки. Вы можете посмотреть сценарий «run» и примеры JRI. –
Действительно. R_HOME можно установить в Project> Preferences> Run/Debug Settings, тогда как для ld.library.paht можно отредактировать параметр «Native library» в каждом из 3 JAR JRI (в соответствии с этим сообщением StackOverflow: http://stackoverflow.com/questions/957700/how-to-set-the-java-library-path-from-eclipse). – PNS