2

我的操作系统是 Mac OS Lion

当我在 Eclipse 中启动 R 时(在成功安装 statet 之后,在 R 和 bash 中,包“rjava、rj 和 rj-gd”)我仍然收到图片中的错误消息。错误

在 ecipse.ini 中我指定了一个 vm iee

-vm
/usr/bin/java

错误日志有以下几行。任何帮助将不胜感激

Launching the R Console was cancelled, because it seems starting the R engine failed. 
Please make sure that R package 'rj' (0.5.5 or compatible) is installed and that the R library paths are set correctly for the R environment configuration 'R'.
Process Error Log:
Nov 17, 2011 4:26:41 PM de.walware.rj.server.RMIServerControl start
INFO: [Control:rjs-local-1321543599373] initialize server...
Nov 17, 2011 4:26:41 PM de.walware.rj.server.srvImpl.AbstractServerControl initREngine
SEVERE: [Control:rjs-local-1321543599373] init JRI/Rengine failed.
java.lang.NoClassDefFoundError: de/walware/rj/server/dbg/TracepointListener
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at de.walware.rj.server.jri.loader.JRIClassLoader.findClass(JRIClassLoader.java:514)
    at de.walware.rj.server.jri.loader.JRIClassLoader.loadRJavaClass(JRIClassLoader.java:746)
    at de.walware.rj.server.jri.loader.JRIServerLoader.loadServer(JRIServerLoader.java:82)
    at de.walware.rj.server.srvImpl.AbstractServerControl.initREngine(AbstractServerControl.java:145)
    at de.walware.rj.server.RMIServerControl.start(RMIServerControl.java:104)
    at de.walware.rj.server.RMIServerControl.main(RMIServerControl.java:41)
Caused by: java.lang.ClassNotFoundException: de.walware.rj.server.dbg.TracepointListener
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at de.walware.rj.server.jri.loader.JRIClassLoader.findClass(JRIClassLoader.java:514)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 15 more
4

2 回答 2

3

这个问题有一个非常简单的解决方案。我在更新 StatET 插件后遇到了它。

StatET IDE 发生了很大变化,它需要新版本的 RJ 库(请参阅安装 RJ 的 R 包部分)。

要安装 RJ 1.0 (StatET 2.0.x),请键入以下命令:

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

R 控制台将再次工作。希望有帮助。

于 2011-12-19T12:42:20.443 回答
2

在 OS X 的安全更新后,我遇到了完全相同的问题,我尝试过并想向您展示我的“解决方案”。我正在重新安装所有东西,也许这不是必需的,但它可以工作。

我重新安装了,因为我认为这是 Java 1.6.0_29 的问题,并且在 OS XI 上现在不知道如何降级 Java 安装。看这里

删除旧 R 并安装最新版本 2.14(R 版本 2.14 不存在 rj 0.5)

rm -rf /Library/Frameworks/R.framework /Applications/R.app
wget http://cran.r-project.org/bin/macosx/R-2.14.0.pkg
[run installer]
r
> install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-1.0")
[...]

我还重新安装了 Eclipse 并将其更新到版本 3.7.1 添加插件(帮助 -> 安装新软件 -> 来自 StatET 的 Eclipse 3.7 的 URL)

现在运行配置中的一些 Eclipse 配置:

  • 我使用了“Workspace default JRE (JVM 1.5.0)”,这可能不是那么重要

可能最重要的配置(对我来说也是如此)是 R 库的路径。如果您没有以管理员身份登录(或具有管理员权限),jr 库将被写入您的主目录:~/Library/R/2.14/library。你必须在你的 R 配置中添加这个目录(Eclipse -> Preferences -> StatET -> Run/Debug -> R Environment -> Edit)

图片在这里(作为未注册用户,我不允许整合图片)

这对我有用,直到现在一切似乎都很好。

关于我的配置:

  • OS X 10.6.8
  • 日食 3.7.1
    • StatET 1.0.0
  • Java 10.6.0_29(java 版本)
  • R 2.14
    • rj_1.0.2-5
    • rj.gd_1.0.2-2
于 2011-11-22T11:00:11.370 回答