运行ant时"无法找到tools.jar"

joh*_*ohn 48 java ant java-home tools.jar

运行ant时,我收到以下消息:

Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar

我将JAVA_HOME设置为C:\Program Files\Java\jdk1.7.0_02,PATH包含C:\Program Files (x86)\Java\jdk1.7.0_02\bin,CLASSPATH包含C:\Program Files (x86)\Java\jdk1.7.0_02,并将ANT_HOME设置为C:\ant.

似乎ant忽略了所有这些设置并在其他地方寻找tools.jar.没有指向jre6路径的环境变量.有什么想法吗?

Jay*_*yan 36

有两个目录看起来像JDK.

  C:\Program Files\Java\jdk1.7.0_02
  C:\Program Files (x86)\Java\jdk1.7.0_02\
Run Code Online (Sandbox Code Playgroud)

这可能是因为安装了64位和32位JDK?可能是这样的情况,ant.batjava.exe看到的应该来自JDK.如果JRE 位于路径的第一位,那么将用于猜测JDK位置.java.exe

将'C:\ Program Files(x86)\ Java\jdk1.7.0_02\bin'或'C:\ Program Files\Java\jdk1.7.0_02'作为路径中的第一个参数.

进一步的步骤

您可以获取输出ant -diagnostics 并查找有趣的键.(假设是Sun/Oracle JDK).

 java.class.path 
 java.library.path
 sun.boot.library.path
Run Code Online (Sandbox Code Playgroud)

(在我的例子中,tools.jar出现在java.class.path中)

  • 蚂蚁期待'JDK'.必须首先显示JDK中的java.exe.请参阅Mads Hansen的评论 (2认同)
  • 我有同样的错误.当我尝试了ant -diagnostics时,我得到了java.home:C:\ Program Files\Java\jre6.But我已将JAVA_HOME设置为C:\ Program Files(x86)\ Java\jdk1.6.0_25什么问题 (2认同)

小智 11

我也遇到了同样的问题所以我只是从最后删除了JDK路径,并在所有系统或Windows 32路径之前将其置于启动状态.

在此之前:

C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Windows\System32\WindowsPowerShell\v1.0 \; C:\ Program Files\Microsoft SQL Server\100\Tools\Binn \; C:\ Program Files\Microsoft SQL Server\100\DTS\Binn \; C:\ Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE \; C:\ Users\Rajkaran\AppData\Local\Smartbar\Application \; C:\ Users\Rajkaran\AppData\Local\Smartbar\Application \; C:\ Program Files\doxygen\bin; %JAVA_HOME%\ bin ;%ANT_HOME%\ bin

所以我这样做了:

%JAVA_HOME%\ bin ; C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Windows\System32\WindowsPowerShell\v1.0 \; C:\ Program Files\Microsoft SQL Server\100\Tools\Binn \; C:\ Program Files\Microsoft SQL Server\100\DTS\Binn \; C:\ Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE \; C:\Users\Rajkaran\AppData\Local\Smartbar\Application \; C:\ Users\Rajkaran\AppData\Local\Smartbar\Application \; C:\ Program Files\doxygen\bin;%ANT_HOME%\ bin


Ond*_*sky 2

  1. 尝试根据本教程再次检查它:http://vietpad.sourceforge.net/javaonwindows.html

  2. 尝试重新启动您的系统。

  3. 如果没有,尝试运行“cmd”并输入“java”,它会打印任何内容吗?