我正在为Java程序组建一个开发环境,在第一次尝试使用我的Ant构建脚本之后,我遇到了这个错误:
Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk/lib/tools.jar
虽然jdk的路径是正确的,但tools.jar确实不存在。它实际上是应该在那里还是我得到一些配置/安装的东西错了?
答案 0 :(得分:62)
看起来你可以在/ usr / lib / jvm / java-6-openjdk中安装Java,但只有JRE,而不是JDK。这为我解决了这个问题:
sudo apt-get install openjdk-6-jdk
答案 1 :(得分:17)
注意:在CentOS / RHEL上安装java-1.x.0-openjdk
是不够的。同时安装java-1.x.0-openjdk-devel
。
答案 2 :(得分:13)
它在我的机器上。我在Windows XP SP3上运行Sun JDK 1.6.0_21。
你确定你有JDK吗?您是否可能只有JRE?
答案 3 :(得分:4)
在Debian上,用apt-get install ant
安装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
强>
答案 4 :(得分:3)
在Ubuntu上我需要安装JDK
sudo apt-get install openjdk-7-jdk
答案 5 :(得分:3)
apt install defalut-jdk # this doesn't contain some file, like tools.jar...
apt install openjdk-8-jdk # this contains all files.
答案 6 :(得分:2)
通过解压缩安装jdk-6u45-linux-x64.bin(来自oracle.com网站)不会产生tools.jar。我想这个文件是由“make-jpkg”脚本创建的。一旦我这样做,并安装了生成的.deb文件,一切都很好。 我真的很讨厌甲骨文的律师。
答案 7 :(得分: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
答案 8 :(得分:2)
在Ubuntu上我通过安装包
解决了这个问题openjdk-7-jre-lib
tools.jar之后就出现了。
(我知道这是一篇很老的帖子,但是发表评论希望这对像今天我这样潜伏的人来说会有所帮助。)