Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么ant在错误的目录中查找tools.jar?_Ant_Java - Fatal编程技术网

为什么ant在错误的目录中查找tools.jar?

为什么ant在错误的目录中查找tools.jar?,ant,java,Ant,Java,我正在尝试执行“ant-version”,我得到了 C:\Users\owner>ant -version Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre7\lib\tools.jar Apache Ant(TM) version 1.8.4 compiled on May 22 2012 我检查了所有环境变量,但找不到对C:\Program Files\Java\jre7 我将JD

我正在尝试执行“ant-version”,我得到了

C:\Users\owner>ant -version
Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre7\lib\tools.jar
Apache Ant(TM) version 1.8.4 compiled on May 22 2012
我检查了所有环境变量,但找不到对
C:\Program Files\Java\jre7

我将JDK和JRE安装在
C:\ProgramFiles(x86)\Java\jre7
C:\ProgramFiles(x86)\Java\jdk1.7.0\U 10

我还有
C:\Program Files\Java\jre7
C:\Program Files\Java\jdk1.7.0\u 10

有人能告诉我为什么ant找错了目录吗

我在stackoverflow上看到了许多其他问题,但没有一个能解决我的问题

%path%的输出为

C:\Users\owner>echo %path%
%CommonProgramFiles%\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Window
s;C:\Windows\System32\Wbem;C:\Program Files (x86)\CyberLink\Power2Go;C:\Program
Files (x86)\ATI Technologies\ATI.ACE\Core-Static;c:\Program Files (x86)\Microsof
t SQL Server\90\Tools\binn\;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Window
s\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.6.0_24\bin;C:\Prog
ram Files\TortoiseSVN\bin;C:\Program Files (x86)\Java\jdk1.7.0_10;C:\Program Fil
es (x86)\Android\android-sdk\tools\apache-ant-1.8.4\bin;C:\Program Files (x86)\A
ndroid\android-sdk\platform-tools\;C:\Program Files (x86)\Android\android-sdk\to
ols\;C:\Program Files\Common Files\Microsoft Shared\Windows Live

C:\Users\owner>echo %JAVA_HOME%
%ProgramFiles(x86)%\Java\jdk1.7.0_10

Ant(不幸地)依赖于
JAVA\u HOME
系统属性。您需要确保该属性指向有效的JDK安装(而不是JRE)。

我刚刚弄清楚它是什么


将%JAVA\u HOME%从
%ProgramFiles(x86)%\JAVA\jdk1.7.0\u 10
更改为
C:\ProgramFiles(x86)\Java\jdk1.7.0\u 10
修复了它。

在运行ant的命令提示符中,
echo%PATH%
的输出是什么?更新了问题,使用
echo%PATH%
我本来要告诉你也将
Java\u HOME
输出发布,但有人已经基于此发布了答案。好吧,看起来你更新了你的问题。由于您的环境变量正在计数,您还可以发布您的ant构建/配置文件吗?对不起,这是我的错误。我假设您正在运行ant下的构建。ant项目通常有一个build.xml文件与之关联。如果您希望在特定的JDK/JRE下运行ant,可以在这里尝试答案。还要确保您的ant环境变量按照“检查安装”一节中的apache ant文档进行设置。我已经用
%JAVA\u HOME%