Как установить '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