47

我正在为 Java 程序构建一个开发环境,在第一次尝试我的 Ant 构建脚本后,我得到了这个错误:

Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk/lib/tools.jar

虽然 jdk 的路径是正确的,但 tools.jar 确实不存在。它实际上应该在那里还是我弄错了一些配置/安装的东西?

4

10 回答 10

66

似乎您可以在 /usr/lib/jvm/java-6-openjdk 中安装 Java,但只有 JRE,而不是 JDK。这为我修复了它:

sudo apt-get install openjdk-6-jdk

于 2013-09-18T16:55:42.883 回答
19

注意:在 CentOS / RHEL 上安装java-1.x.0-openjdk是不够的。同时安装java-1.x.0-openjdk-devel.

于 2013-12-19T15:44:18.277 回答
14

它在我的机器上。我在 Windows XP SP3 上运行 Sun JDK 1.6.0_21。

你确定你有JDK吗?你有可能只有JRE吗?

于 2011-04-05T23:54:49.003 回答
5

在 Debian 上,使用 安装 Ant 后apt-get install ant,我​​在运行它时遇到了同样的错误:

Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk-amd64/lib/tools.jar

确实,尽管它本身确实存在,但tools.jar在任何地方都没有提及。/usr/lib/usr/lib/jvm/java-6-openjdk-amd64


https://packages.debian.org/search?searchon=contents&keywords=java-6-openjdk-amd64%2Flib%2Ftools.jar

根据上面的搜索,java-6-openjdk-amd64/lib/tools.jar似乎是 的一部分openjdk-6-jdk,它确实没有与 ant 一起安装(因为它只被标记为建议(https://packages.debian.org/wheezy/ant))。

apt-get install openjdk-6-jdk

于 2014-06-16T21:51:32.807 回答
5
apt install defalut-jdk # this doesn't contain some file, like tools.jar...
apt install openjdk-8-jdk # this contains all files.
于 2018-11-02T16:15:23.127 回答
4

在 Ubuntu 上,我只需要安装 JDK sudo apt-get install openjdk-7-jdk

..你可以随时搜索所有可用的版本

$ sudo apt-cache search openjdk | grep ^openjdk

从网站https://openjdk.java.net/install/我们可以阅读

openjdk -7-jre包仅包含 Java 运行时环境。如果您想开发 Java 程序,请安装openjdk-7-jdk包。

于 2013-11-01T23:11:37.480 回答
3

尝试以下操作:

% sudo apt-get 安装 sun-java6-jdk

% sudo update-alternatives --config java

选择具有路径的选项

/usr/lib/jvm/java-6-sun/jre/bin/java

在 ubuntu 10.4 上为我工作

你也可以尝试把你的JAVA_HOME,如下:

% sudo export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")

于 2013-01-23T19:49:56.490 回答
2

通过解压缩安装 jdk-6u45-linux-x64.bin(来自 oracle.com 站点)不会生成 tools.jar。我猜该文件是由“make-jpkg”脚本创建的。一旦我这样做了,并安装了生成的 .deb 文件,一切都很好。我真的很讨厌甲骨文的律师。

于 2014-02-16T18:37:36.963 回答
2

即使您安装了 jdk,您也需要重定向 JAVA_HOME 以指向它。

这是一个奇怪的技巧,你可以在你的 .profile 中正确设置 JAVA HOME,不管你有哪个 java:

export JAVA_HOME=$(dirname $(dirname $(readlink -e /usr/bin/java)))
# Test for jdk installed above jre
if [ -x $JAVA_HOME/../bin/java ]; then export JAVA_HOME=$(dirname $JAVA_HOME); fi
于 2015-07-21T17:54:05.013 回答
2

在 Ubuntu 上,我通过安装包解决了这个问题

openjdk-7-jre-lib

之后出现了 tools.jar。

(我知道这是一篇旧帖子,但希望它对像我今天一样潜伏着寻求答案的人有所帮助。)

于 2015-12-25T08:44:09.150 回答