由于JDK版本不好,在Ubuntu 12.04上编译Android源无法继续

时间:2012-09-05 14:12:46

标签: android oracle compilation jdk1.6 openjdk

我一直在努力在我的Ubuntu 12.04 64位操作系统上编译Android源代码。

出于某种原因,我一直处于安装Sun / Oracle JDK 1.6版本的阶段。我一直在尝试许多命令(当然还有官方链接),我最终要么没有任何东西,要么使用JDK 1.7或OpenJDK,要么没有jdk-tools。

使用JDK成功编译代码(或部分代码)的确切步骤是什么?我被困在this link上的“make j4”阶段。

3 个答案:

答案 0 :(得分:1)

为android安装适当的java版本(1.6),请执行以下操作

1)安装JDK

由于Sun JDK不再位于Ubuntu的主程序包存储库中,我们必须在oracle网站的ubuntu 12.04中手动安装它

请转到以下链接并下载JDK

http://www.oracle.com/technetwork/java/javase/downloads/jdk6-downloads-1637591.html

按照以下步骤安装java并根据用途配置它

$ chmod +x jdk-6u33-linux-x64.bin

$ sudo ./jdk-6u33-linux-x64.bin
$ sudo mv jdk1.6.0_33 /usr/lib/jvm/

$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_33/bin/java 1
$ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_33/bin/javac 1
$ sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_33/bin/javaws 1

$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config javaws

要验证isntallation是否正确,请执行步骤。它现在应该显示Sun JDK正在运行而不是IcedTea

$ java -version

java version "1.6.0_33"

Java(TM) SE Runtime Environment (build 1.6.0_33-b04)

Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03, mixed mode)

用于在ubuntu 12.04上编译android并安装正确的java版本 访问http://www.embeddedcircle.com/android-compilation-in-ubuntu-12-04-lts-precise-for-pandaboard/

感谢 恐龙

答案 1 :(得分:0)

在Ubuntu中,当你下载jdk(32位版本,如果是用于android编程,在我看来更好的tar.gz而不是.rpm)时,重要的是“安装”并使用导出如果我没有错的话,你可以在Oracle的页面中看到这些命令。您还需要转到您的编辑器(Eclipse,Netbeans或哪一个?)并添加新的Java平台以确保您使用的是您想要的JDK版本。导出意味着您可以在需要时编译项目如果没有,你必须转到java目录并在/ bin文件夹中执行命令(可能在开头使用sudo)来编译你的项目。

P.S。:您可以找到如何导出here

答案 2 :(得分:0)

我遇到了同样的问题。有些人甚至报告JDK SE会看到错误。 另一种解决方法是修改两行源代码,请参见此处:

Diff changes

https://github.com/CyanogenMod/android_external_guava/commit/c8b97210aa31c9b80b5fd136d8617ebe4e731e09