R: ошибка установки пакета rJava
при установке rJava с помощью Я получаю следующую ошибку:
checking Java support in R... present:
interpreter : '/usr/bin/java'
archiver : '/usr/bin/jar'
compiler : '/usr/bin/javac'
header prep.: '/usr/bin/javah'
cpp flags : '-I/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../include -I/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../include/linux'
java libs : '-L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/amd64/server -L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/amd64 -L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../lib/amd64 -L -L/usr/java/packages/lib/amd64 -L/usr/lib64 -L/lib64 -L/lib -L/usr/lib -ljvm'
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
у меня установлен Java JDK и java -version
возвращает следующее:
$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
при поиске ошибки я вижу, что у других такая же проблема, но не найти решение, кроме "установить весь JDK, а не только JRE", который я сделал.
другая вещь, которую я прочитал, была run sudo R CMD javareconf
который работает довольно счастливо без ошибок.
любой идеи, в чем моя проблема?
[[EDIT]] Прошло несколько месяцев с тех пор, как у меня была эта проблема. Сначала я решил это, отредактировав мои пути Java, как показано в ответе, который я опубликовал ниже. Недавно я столкнулся с той же проблемой при новой установке Ubuntu. Я попробовал рекомендацию Дирка использовать apt-get для установки пакета rJava. Это сработало идеально. Что я не смог оценить изначально, так это то, что установка пакетов с помощью метода Ubuntu apt-get принципиально отличается от загрузки одного и того же пакета с помощью install.пакеты () внутри R. пакеты Ubuntu решают некоторые проблемы, которые я не понял или не оценил.
14 ответов
оказывается, моя проблема была проблема с моим JAVA_HOME
переменные среды. Да, шокирующе, я знаю. Моя начальная настройка для PATH
и JAVA_HOME
выглядело так:
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export PATH=$PATH:$JAVA_HOME/bin
и я добавил /jre
Итак, теперь это выглядит так:
export JAVA_HOME=/usr/lib/jvm/java-6-sun/jre
export PATH=$PATH:$JAVA_HOME/bin
все на Java, казалось, работало нормально без /jre
но rJava не будет. Странный.
спасибо - ваше предложение по поводу $JAVA_HOME
веди меня к аналогичному решению:
prompt$ unset JAVA_HOME
перед вызовом Р.
я столкнулся с той же проблемой, и она работала после выполнения команд ниже.
export JAVA_LIBS="$JAVA_LIBS -ldl"
R CMD javareconf
подробности на http://www-01.ibm.com/support/knowledgecenter/SSPT3X_3.0.0/com.ibm.swg.im.infosphere.biginsights.install.doc/doc/install_install_r.html
Это сработало для меня на Ubuntu 12.04 и R версии 3.0
cd /usr/lib/jvm/java-6-sun-1.6.0.26/include
это каталог, который имеет jni.h
далее создайте мягкую ссылку на другой требуемый файл заголовка (я слишком ленив, чтобы узнать, как включить более одного каталога в опцию JAVA_CPPFLAGS ниже):
sudo ln -s linux/jni_md.h .
наконец-то
sudo R CMD javareconf JAVA_CPPFLAGS=-I/usr/lib/jvm/java-6-sun-1.6.0.26/include
ниже приведен один из моих ответов на другой пост -ошибка: не удается загрузить установленные пакеты просто сейчас
(это также относится к этому вопросу)
для пользователей Linux(Ubuntu): если у вас есть oracle-java (7/8) установлен. Это будет в этом месте /usr/lib/jvm
и доступ.
создать файл /etc/ld.so.conf.d/java.conf
со следующими записями:
/usr/lib/jvm/java-8-oracle/jre/lib/amd64
/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server
(замените java-8-oracle на java-7-oracle в зависимости от вашего версия java)
затем:
sudo ldconfig
перезапустите RStudio, а затем установите пакет rJava.
запуск R под Gentoo на AMD64. Я обновился до R 2.12.0
R версия 2.12.0 (2010-10-15) Copyright (C) 2010 R Foundation for Statistical Computing ISBN 3-900051-07-0 Платформа: x86_64-pc-linux-gnu (64-разрядная версия) и эти надоедливые сообщения исчезли.
Января Vandermeer
Я попытался установить openjdk-7 -*, но у меня все еще были проблемы с установкой rJava. Оказывается, после перезагрузки компьютера не было никаких проблем.
так
sudo apt-get install openjdk-7-*
RESTART after installing java, then try to install package "rJava" in R
то, что работало для меня, меняло JAVA_HOME из файла /usr/lib/R/etc/javaconf
я сначала проверил, какая была моя версия Java включена:sudo update-alternatives --config java
.
В моем случае это было java-8-oracle
Я открыл файл /usr/lib/R/etc/javaconf
и заменить default-java
by java-8-oracle
:
${JAVA_HOME=/usr/lib/jvm/default-java}
заменить на :
${JAVA_HOME=/usr/lib/jvm/java-8-oracle}
а то sudo R CMD javareconf
я перезапустил RStudio, а затем мог установить rJava.
что я делаю здесь:
-
in/etc/apt / sources.список добавить:
деб http://ftp.de.debian.org/debian Sid main
Примечание:rjava должна быть последней версии
2 запустить: sudo apt-получить обновление sudo apt-get install r-cran-rjava
после обновления старой версии rjava, затем можно установить rhdfs_1.0.8.
Я получил его работу, загрузив:https://cran.r-project.org/src/contrib/rJava_0.9-8.tar.gz и запуск команды R CMD install rJava_0.9-8.смола.gz
пакет rJava ищет . Но он недоступен по умолчанию. Эта папка имеет символическую ссылку для java по умолчанию, настроенного для системы.
чтобы активировать java по умолчанию, установите следующие пакеты:
sudo apt-get install default-jre default-jre-headless
протестировано на ubuntu 17.04 с CRAN R 3.4.1
я столкнулся с подобной проблемой на Ubuntu 16.04 и смог ее решить, создав папку с именем "default-java" в /usr/lib/jvm
и копирование в него всего содержимого /usr/lib/jvm/java-8-oracle
. Я выбрал это решение, поскольку исправление переменной среды JAVA_HOME оказалось бесполезным.