Как установить 'rj' в плагин StatET для Eclipse?

Я начал пытаться использовать StatET и Texlipse для создания отчетов SWEAVE. При запуске консоли R в модуле StatET для Eclipse (OS X 10.6.4) я получаю сообщение:

[INFO] The R package 'rj' is not available, R-StatET tools cannot be initialized.

Информация о http://www.walware.de/goto/statet утверждает:

"Пакет работает только в консоли R (RJ) по умолчанию в StatET, поэтому вам необходимо установить и обновить его с помощью командной строки:

R CMD INSTALL --no-test-load rj_*.tar.gz

Что это значит?

В Eclipse в разделе "Установка нового программного обеспечения" и сайта

WalWare - http://download.walware.de/eclipse-3.6

он утверждает, что

  RJ Core Library 0.5.0.b201008271600sw

уже установлен.

Любые полезные рекомендации с благодарностью получили.

Ответ 1

Похоже, вам нужно установить библиотеку RJ, которую можно загрузить с сайта StatET здесь: http://download.walware.de/rj/rj_0.5.0-5.tar.gz (более поздние версии RJ можно найти на http://www.walware.de/it/downloads/rj.mframe)

Если вы сохраните этот файл на своем рабочем столе, вы можете загрузить его в R с помощью команды, которую они предоставили R CMD INSTALL --no-test-load rj_*.tar.gz после перехода на ваш рабочий стол или где бы вы не сохранили файл библиотеки. Кроме того, вы МОЖЕТЕ использовать интерфейс GUI и выбрать Install packages from local ZIP files под Packages в R, хотя я не использовал R на Mac, поэтому макет может немного отличаться.

Ответ 2

[rant] Мне также не хватает репутации, чтобы поместить мой ответ туда, где он принадлежит. И там нет кнопки, указывающей на это. Просто большой экран, полный нигде, не хотел нажимать. Отрицательная открытость отстой. Это отстой в Eclipse, и это тоже отстой. [/Напыщенная]

Я нахожу rj разочарование под Ubuntu. В моей системе, с каждым крупным обновлением Ubuntu с новой версией R, я должен снова пройти эту процедуру.

Однажды я попытался использовать символ тильды (~) в имени пути в некотором поле конфигурации Eclipse. Это провалилось молча.

Моя текущая конфигурация выглядит следующим образом. В моем файле ~/.Renviron:

R_LIBS_USER=~/etc/R/amd64/2.11

Как только rJava работает, здесь есть каталог rJava. Просто так, что я не сводил себя с ума, в ~/etc/R/README Я отмечаю, что моя текущая конфигурация R управляется ~/.Renviron

Как-то в какой-то момент у меня возникли проблемы с разрешением, где

R CMD javareconf 

не удалось. Однажды в отчаянии я глупо побежал к этому под sudo, чтобы обойти эту проблему, и в итоге возникли проблемы с правами на сгенерированные файлы. Глупый! Правильное исправление заключалось в том, чтобы сделать все файлы в /etc/R доступными для всего мира. Возможно, javareconf важен только в том случае, если вы используете Java по умолчанию. Раньше я запускал Sun JRE. С 10.10 я запускаю icedtea6 и, похоже, работает нормально. Однажды это было просто для того, чтобы моя конфигурация снова работала.

Как только у меня есть правильная привязка Java, из командной строки R:

install.packages("rJava")

У меня были проблемы с разрешением файлов, которые выполнялись в прошлом. Я думаю, что это было исправлено, делая все файлы в /etc/R доступными для мира.

Ниже приведена полезная диагностика, чтобы узнать, работает ли это из любой консоли R:

> system.file("jri",package="rJava")
[1] "/home/allan/etc/R/amd64/2.11/rJava/jri"

Если это не выглядит правильно в Eclipse, есть также доступная отладка для запуска, хотя это потребовалось навсегда, прежде чем я заметил это в документах в StatET.

Я создал конфигурацию запуска R Console для R 2.11 debug. На вкладке JRE добавьте -Dde.walware.rj.verbose=true. На вкладке "Общие" нажмите Allocate additional Error Log Consoles.

Основные параметры конфигурации следующие. Главная вкладка, Launch Type: RJ. R_Config, вам нужно выбрать конфигурацию R Installation или создать/отредактировать, если у вас ее нет. Мина Name=R, Location=/usr/lib64/R На вкладке "Окружающая среда" у меня есть R_LIBS_USER=/home/USER/etc/R/amd64/2.11 в соответствии с тем, как я устанавливал вещи выше. Не используйте символ тильды (~) здесь!

Если вы закончите с этой проблемой столько, сколько я сделал, вы в конечном итоге убиваете множество мертвых консолей. На вкладке Главная я добавил программу --no-save. Я не думаю, что это ничего не делает, так как я не могу закончить консоль нажатием CTRL-D. На вкладке R_Console я добавил следующий фрагмент R:

q <- function(save = "no", status = 0, runLast = TRUE){
.Internal(quit(save, status, runLast))
#<environment: namespace:base>
}

Это избавит вас от раздражающей подсказки "сохранить рабочее пространство", когда убивает консоль R с красным квадратом (это символично?). В моей текущей рабочей области также есть проект C, поэтому моя консоль R постоянно появляется под пустой C- Создайте консоль. Раздражает, как все ад! Пока не решили, но я обнаружил, что из окон кода StatET ключевой CTRL-R C вытаскивает консоль R вверх.

С моей конфигурацией R 2.11 debug я получаю дополнительную консоль под названием /usr/lib/jvm/java-6-openjdk/bin/java. Вам нужно будет раскрыть раскрывающийся список консоли, чтобы найти его. Ниже приведен соответствующий фрагмент успешной инициализации:

CONFIG: JR library path: 
    /home/allan/etc/R/amd64/2.11
    /usr/local/lib64/R/site-library
    /usr/lib64/R/library
10-Dec-2010 7:56:47 AM org.rosuda.rj.JRClassLoader addClassPath
FINE: Added '/home/allan/etc/R/amd64/2.11/rJava/java' to classpath of URL loader  

Гораздо больше spoo, а затем:

10-Dec-2010 7:56:48 AM de.walware.rj.server.jriImpl.RosudaJRIServer start
INFO: R engine started successfully. New Client-State: 'Connected'.

Выглядит хорошо, не так ли? Но вот и на консоли R:

[INFO] The R package 'rj' is not available, R-StatET tools cannot be initialized.

Игнорируйте лежащего ублюдка! Оказывается, мой rj работает отлично. Не знаю, почему это сообщение об ошибке сохраняется.

Каждый раз, когда вокруг блока с этой проблемой появляется какой-то новый потрясающий кусок гравия, мой кроссовок.

Я не знаю, покрыл ли я все, но на данный момент я написал достаточно. Может быть, если есть комментарии, я вернусь и заполню пробелы.

Примечание: найден плагин Eclipse для переключения клавиатуры с клавиатуры здесь: Eclipse: ярлык клавиатуры для переключения между консолями?

Ответ 3

После установки rj в консоли R с помощью

install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-1.1")

(см. http://www.walware.de/?page=/it/statet/troubleshooting.mframe для правильной версии rj),

не забудьте обновить переменную R_LIBS в Eclipse (Windows → Настройки → StatET → Run/Debug → R Environments → Edit). Чтобы узнать значение, просто введите в консоли R:

packageDescription("rj").

В моей установке windows 8 возвращается C:/Users/Fibonacci.PYTHAGORAS/Documents/R/win-library/3.0/rj/Meta/package.rds. Значение R_LIBS я установлено на

C:/Users/Fibonacci.PYTHAGORAS/Documents/R/win-library/3.0

который является контуром, где установлены все библиотеки.

Как указано в http://www.walware.de/?page=/it/statet/troubleshooting.mframe более новые версии (версии > 0.5.5) не нуждаются в команде R CMD INSTALL etc....

Ответ 4

Здесь очень похоже, что у меня было и решение, которое я нашел.

Я изначально установил Statet с помощью встроенного инструмента Eclipse "Установите новое программное обеспечение..."

Кажется, он загрузил Statet + rj и что процесс установки прошел хорошо.

После этой первой установки я попытался установить оба пакета снова. Eclipse отказался от чтения, что они уже установлены. И оба пакета/программы были фактически перечислены в окне Eclipse.

Но консоль R все еще отказалась запускать, диалоговое окно, в котором я должен был проверить, был ли rj доступным, и что пути к файлам были правильными. Еще одна странная вещь: оконный проводник не смог найти rj на моем диске.

???

Чтобы решить всю мою проблему, я просто скачал rj из http://www.walware.de/ и установил этот пакет через консоль r и с помощью базовой установки. packages().

Теперь он отлично работает.

Но, я все еще не понимаю все.....: -)

Ответ 5

Я бы сделал комментарий, но мне не хватало необходимой репутации. Для Windows процедура такая же. Там нет zip файла. Используйте tar.gz. Работал для меня. Команда, работающая из той же папки, что и загруженный файл:

$G:\R-2.12.0\bin\i386\R.exe CMD INSTALL --no-test-load rj _ *. tar.gz