【问题标题】:How does one install 'rj' in StatET plugin for Eclipse?如何在 Eclipse 的 StatET 插件中安装“rj”?
【发布时间】:2010-09-16 14:46:41
【问题描述】:

我已经开始尝试使用 StatET 和 Texlipse 来生成 SWEAVE 报告。在 Eclipse (OS X 10.6.4) 的 StatET 插件中启动 R 控制台时,我收到以下消息:

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

http://www.walware.de/goto/statet 上的信息状态:

“该软件包仅适用于 StatET 中的默认 R Console (RJ)。因此您必须使用命令行安装和更新它”:

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

已安装。

感谢您提供任何有用的指导。

【问题讨论】:

    标签: eclipse r


    【解决方案1】:

    [咆哮] 我也缺乏将我的回复放在应有的地方的声誉。那里没有指示这一点的按钮。只是一个充满无处可点击的大屏幕。负面的可发现性很糟糕。它在 Eclipse 中很糟糕,在这里也很糟糕。 [/咆哮]

    我发现 rj 在 Ubuntu 下令人沮丧。在我的系统上,每次使用新版本的 R 升级 Ubuntu 时,我都必须重新执行此过程。

    有一次我尝试在某个 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 2.11 debug 创建了一个 R 控制台运行配置,在 JRE 选项卡中添加 -Dde.walware.rj.verbose=true。在常用选项卡中,单击Allocate additional Error Log Consoles

    主要配置选项如下。主选项卡,Launch Type: RJ。 R_Config 选项卡,您需要选择一个已配置的 R 安装,或者如果您没有可用的安装,则创建/编辑一个。我的是Name=R, Location=/usr/lib64/R 在环境选项卡中我有R_LIBS_USER=/home/USER/etc/R/amd64/2.11 根据我上面的设置方式。请勿在此处使用波浪号 (~) 字符!

    如果你最终像我一样纠结于这个问题,你最终会杀死很多死机。在主选项卡中,我添加了程序选项--no-save。我不认为这有任何作用,因为我无法通过按 CTRL-D 来结束控制台。在 R_Console 选项卡中,我添加了以下 R sn -p:

    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 的额外控制台。您必须探索控制台下拉菜单才能找到它。以下是初始化成功的相关sn-p:

    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  
    

    更多的骗局,最后:

    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 工作得很好。不知道为什么此失败消息仍然存在。

    每次遇到这个问题时,我的运动鞋中都会出现一些令人惊叹的新砾石。

    我不知道我是否已经涵盖了所有内容,但我现在已经写够了。也许如果有 cmets 我会回来填补空白。

    注意:在这里找到了一个用于通过键盘切换控制台的 Eclipse 插件:Eclipse: Keyboard shortcut for switching between consoles?

    【讨论】:

    • rJava和rj有什么区别?
    【解决方案2】:

    看来您需要安装 RJ 库,可以从此处的 StatET 站点下载:http://download.walware.de/rj/rj_0.5.0-5.tar.gz(更多最新版本的 RJ 可以在 http://www.walware.de/it/downloads/rj.mframe 找到)

    如果您将该文件保存在桌面上,则可以在导航到您的桌面或保存库文件的任何位置后,使用他们提供的命令R CMD INSTALL --no-test-load rj_*.tar.gz 将其加载到 R 中。或者,您可以使用 GUI 界面并在 R 中选择 Packages 下的 Install packages from local ZIP files,尽管我没有在 Mac 上使用过 R,因此布局可能略有不同。

    【讨论】:

    • 谢谢。你的cmets给了我一个正确的方向。我很愚蠢,该命令只是在终端 R CMD INSTALL --no-test-load rj_.tar.gz * 安装到库 '/Library/Frameworks/R.framework/Resources/library' * 安装*source package 'rj' ... ** R ** inst ** 为延迟加载准备包 ** help 在包 'rj' 中找不到手册页 *** 安装帮助索引 ** 构建包索引。 .. * 完成(rj)
    • @user441706 - 很高兴你朝着正确的方向前进,我应该提到该命令需要从 Mac 或 Linux 上的终端窗口运行,或者从 Windows 上的 DOS 提示符运行机器。祝你好运!
    • 好的 - 一切正常,我在 Eclipse 中“编织”了我的第一个文档!一个人认为没有完全按计划进行的是读取 csv 文件: > df
    • @user441706 - 我无法在 Sweave 中使用 file.choose() 重现您的错误,但这可能是由于多种原因造成的。一般来说,Stack Overflow 上的最佳实践是为您遇到或尝试解决的每个问题设置单独的问题。如果有两个或三个相关的项目 - 那么将它们一起列出可能没问题。你的问题是:file.choose() in Eclipse 肯定有自己的问题。
    • 谢谢。我不想违反礼节!我会问一个新问题。
    【解决方案3】:

    在 R 控制台中安装 rj with 后使用

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

    (有关正确的 rj 版本,请参阅 http://www.walware.de/?page=/it/statet/troubleshooting.mframe),

    不要忘记在 Eclipse 中更新 R_LIBS 变量(Windows -> Preferences -> 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】:

    这里我的解决方案非常相似。

    我最初使用 Eclipse 内置工具“安装新软件 ....”安装 Statet。

    我好像下载了 Statet + rj 并且安装过程很顺利。

    第一次安装后,我尝试再次安装这两个软件包。 Eclipse 拒绝阅读它们已经安装。而且,这两个包/程序实际上都列在了 Eclipse 的窗口中。

    但是,R 控制台仍然拒绝启动,对话框显示我必须检查 rj 是否可用以及文件路径是否正确。另一个奇怪的事情是窗口资源管理器无法在我的磁盘上找到 rj。

    ???

    为了解决我的整个问题,我只是从http://www.walware.de/ 下载了 rj,并通过 r 控制台并使用基本的 install.packages() 命令安装了这个包。

    现在可以完美运行了。

    但是,我还是不明白一切..... :-)

    【讨论】:

      【解决方案5】:

      我会发表评论,但我缺乏必要的声誉。对于 Windows,该过程是相同的。没有 zip 文件。使用 tar.gz。为我工作。该命令在与下载文件相同的文件夹中工作:

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

      【讨论】:

      • 是的,你是对的,你可以从命令行使用 tarball,但我认为 Windows 下的 R GUI 在从本地目录安装时不能识别 tarball?
      【解决方案6】:

      该项目现在托管在 GitLab 上,请参阅 https://gitlab.com/walware/de.walware.rj-server.gr/-/wikis/Installation.

      安装:

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

      请注意,二进制包可用于 Windows。

      正如 Stephan Wahlbrink 在 2022 年 2 月 3 日宣布 StatET 4.5 发布的 this message 中所述,此版本适用于 R 3.6 至 4.1 和 RJ-4.0。

      有关 StatET 的最新信息,请查看home page,尤其是news

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-05-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-20
        相关资源
        最近更新 更多