为什么ant在错误的目录中查找tools.jar?
我正在尝试执行“ant-version”,我得到了为什么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
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%