我发现了这个Is Sun Java really necessary for using Android SDK on Ubuntu 10.10? I prefer OpenJDK,但我无法在Ubuntu上构建android项目。当我尝试:
$ ant debug
我得到了:
Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk/lib/tools.jar
...
BUILD FAILED
/home/kuba/projects/Android/android-sdk-linux/tools/ant/build.xml:651: The following error occurred while executing this line:
/home/kuba/projects/Android/android-sdk-linux/tools/ant/build.xml:672: Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "/usr/lib/jvm/java-6-openjdk/jre"
我有java版本:
$ java -version
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.13) (6b20-1.9.13-0ubuntu1~10.10.1)
OpenJDK Client VM (build 19.0-b09, mixed mode, sharing)
答案 0 :(得分:6)
确保已安装openjdk JDK
。默认情况下,您可能只安装了JRE
。如果您打开Synaptic
,请搜索openjdk
,然后您会看到JDK
和JRE
。选择JDK包并安装。我认为实际的包名是openjdk-6-jdk
。
或使用命令行
# sudo apt-get install openjdk-6-jdk
答案 1 :(得分:4)
Android的官方网页建议使用Sun / Oracle的官方JDK,您可以在http://www.oracle.com/technetwork/java/javase/downloads/index.html下载,但OpenJDK的使用不受支持且非常不推荐。
你不需要在你的系统中安装官方JDK,如果这是你要担心的,只需下载你选择的JDK的* .bin版本(我建议1.6版本),解压缩所有内容在终端中执行* .bin,只修改2个环境变量:
PATH
,将jdk可执行文件path_to_jdk/bin/
的路径添加到PATH
JAVA_HOME
,将JAVA_HOME
设置为jdk的通用路径,而不是bin
或lib
路径,就像之前没有bin一样,只有path_to_jdk / 您可以修改/etc/bash.bashrc
或本地.bashrc
来修改此变量,我建议您修改/etc
您还想从系统中删除实际的OpenJDK。
答案 2 :(得分:0)
我通过安装gcj-jdk
修复了相同的错误(在Debian / Ubuntu中)。
在安装此软件包之前,我有java-7-openjdk
,但其目录中没有tools.jar
。
安装gcj-jdk
后,我找到了tools.jar
,并在ant想要的目录中创建了一个符号链接。