我对 Ubuntu 比较陌生,所以我不会知道很多可能成为你们很多人标准的命令。我正在尝试设置 R 并使用它安装必要的 Java 依赖项,例如 JGR、rjava 等。我通读了很多说明来做到这一点,但不知何故我一定做错了什么。这是R和java的状态:
R --version
R version 2.14.1 (2011-12-22)
Copyright (C) 2011 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
Platform: x86_64-pc-linux-gnu (64-bit)
java -version
java version "1.6.0_23"
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.1)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)
R CMD javareconf
Java interpreter : /usr/bin/java
Java version : 1.6.0_23
Java home path : /usr/lib/jvm/java-6-openjdk/jre
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
Java library path: /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server:/usr/lib/jvm/java-6-openjdk/jre/lib/amd64:/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib/jni:/lib:/usr/lib
JNI linker flags : -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm
JNI cpp flags :
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在 R 中安装“JavaGD”时,这是 JGR 的一个依赖项,我得到:
...
checking Java support in R... present:
interpreter : '/usr/bin/java'
cpp flags : ''
java libs : '-L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm'
configure: error: One or more Java configuration variables are not set.
Make sure R is configured with full Java support (including JDK). Run
R CMD javareconf
as root to add Java support to R.
...
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激。谢谢!
我不熟悉 R,但根据您的控制台,R 似乎需要 JDK,而您将 JRE 作为默认 JAVA 主变量。我建议您确保已安装 JDK 或安装它 ( sudo apt-get install openjdk-6-jdk)。
还要确保您的 JAVA_HOME 环境变量指向 JDK 而不是 JRE(您可以在输出中看到当前java 主路径设置为/usr/lib/jvm/java-6-openjdk/jre.
千万不要盲目安装openjdk-6-jdk。对我有帮助的是更改 Java 的版本。幸运的是,有一个很好的 Ubuntu 工具可以做到这一点:
sudo update-alternatives --config java
Run Code Online (Sandbox Code Playgroud)
在那里您可以看到系统上已有哪些 Java 可用,并设置所需的 Java。然后安装其中一个openjdk-7-jdk或openjdk-6-jdk(或两者)
然后才运行
sudo R CMD javareconf
Run Code Online (Sandbox Code Playgroud)
有关 Java 选择的更多详细信息,请参阅Ubuntu 的社区 Wiki
PS 对于从 Google 来到这里的人:除其他外,这篇文章有助于解决 R 中 rj 安装的问题,并显示错误消息:R is not configured with full Java support. Please make sure an JDK is installed and run R CMD javareconf。当我这样做时,它说:NOTE: Your JVM has a bogus java.library.path system property!。所以:不需要搞乱 Java 的库路径!.
| 归档时间: |
|
| 查看次数: |
31562 次 |
| 最近记录: |