编译Android源码时,出现"Error: could not find jdk tools.jar, please install JDK6”

481 阅读2分钟

前言

前两天在编译Android4.4版本的源码时,出现了一个错误:

"build/core/config.mk:365: *** Error: could not find jdk tools.jar, please install JDK6, which you can download from java.sun.com. Stop."

在网上找了好多资源,最终解决了这个问题。

解决方法

看这个错误,就是需要我们去安装JDK6,后面查了下资料,Android4.4版本就是需要JDK6,高版本不行。所以我们首先需要去下载安装好JDK6

下载JDK6

因为编译Android源码,我们都是在Linux系统下编译的,Linux系统不好下载JDK,所以我是先在Window系统下载好后,再拖到Linux下安装。

JDK6下载地址如下;

www.oracle.com/java/techno…

注意,在这个网址下载前,我们需要免费注册一个账号才能下载(注册时,里面的个人信息随便填就行)。 注册完后,找一个Linux x64 来下载,我这里下载的是jdk-6u43-linux-x64.bin

image.png

给权限

下载完之后,把文件拖到Linux系统下,然后需要先给下权限:chmod +x jdk-6u43-linux-x64.bin

解压

执行解压命令:./jdk-6u43-linux-x64.bin

解完后,可以看到会出现一个jdk1.6.0_43的文件夹,然后我们把这个文件夹,移动到/usr/lib/jvm/下,(注意这里如果没有jvm文件夹,你就自己mkdir一个

安装

依次执行下面3条命令:

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

设置默认的java环境

依次执行下面3条命令:

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

设置符号链接

  • ls -la /etc/alternatives/java*

到这之后,基本就完成了安装,现在可以去检查是否成功,执行java -version

安装完jdk6,编译时出现 /bin/bash: jar: command not found

这个问题出现的原因是:jar这个命令在系统变量里找不到。

所以我们可以先cd /usr/bin,接着执行 sudo ln -s -f /usr/lib/jvm/jdk1.6.0_43/bin/jar,ok,完美解决。

有所收获的朋友,请多多关注、点赞,谢谢大家!