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
Java 找不到tools.jar_Java_Ant_Tools.jar - Fatal编程技术网

Java 找不到tools.jar

Java 找不到tools.jar,java,ant,tools.jar,Java,Ant,Tools.jar,我正在用Java构建一个项目 我有一个错误: 无法找到tools.jar。应在C:\Program Files\Java\jre6\lib\tools.jar中找到它 我安装了一个JDK,文件夹:C:\Program Files\Java\jre6\lib在我的系统中,但文件tools.jar不在那里。不,根据目录结构,您安装的是JRE,而不是JDK。这是不同的 C:\Program Files\Java\jre6\lib ^^^^ 应该是这样的:

我正在用Java构建一个项目

我有一个错误:

无法找到tools.jar。应在C:\Program Files\Java\jre6\lib\tools.jar中找到它

我安装了一个JDK,文件夹:
C:\Program Files\Java\jre6\lib
在我的系统中,但文件
tools.jar
不在那里。

不,根据目录结构,您安装的是JRE,而不是JDK。这是不同的

C:\Program Files\Java\jre6\lib
                      ^^^^
应该是这样的:

C:\Program Files\Java\jdk1.6.0_24

是的,您已经下载并安装了Java运行时环境(JRE),而不是Java开发工具包(JDK)。后者有tools.jar、java.exe、javac.exe等

Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar
如果您已经安装了jdk,那么

.Java/jdkx.x.x

文件夹必须存在于该文件夹中,以便将其暂停并提供完整路径,如

C:\Program Files\Java\jdk1.6.0\lib\tools.jar

确保类路径设置正确,并且指向已安装的JDK的正确版本。另外,您使用的是开放JDK吗?在我尝试从开放JDK迁移到Suns JDK之前,我就遇到过这个问题。是如何解决这个问题的一个例子。

如果这仍然是任何人的问题,我对前面的答案有一点澄清。我使用只安装了JDK的ant遇到了同样的问题。尽管如此,JDK安装程序为我提供了如下目录结构:

C:\Program Files\Java的目录 2012年8月5日上午09:43。 2012年8月5日上午9:43。。 2012年8月5日上午09:46 jdk1.7.0_04 2012年8月5日上午9:19 jre6 2012年8月5日上午9:44 jre7 0个文件0个字节
当我运行ant时,它抱怨没有在jre7子目录下找到tools.jar。直到我
设置“JAVA\u HOME=C:\Program Files\JAVA\jdk1.7.0\u 04”
错误才消失。

不要花太多时间寻找
工具.jar
。如果你犯了那样的错误,不要难过

如果您已经有JavaJDK1.5,请转到
lib
文件夹,那里应该有
tools.jar
。复制并粘贴到ant
bin
文件夹中,然后尝试使用命令
ant-version


您应该可以看到预期的结果。

JAVA\u HOME
环境变量设置为指向
C:\Program Files\JAVA\jdk1.7.0\u 02

我遇到了同样的问题,并且复制
C:\Program Files\JAVA\jdk1.6.0\u 26\lib\tools.jar
C:\Program Files\JAVA\jre6\lib\ext
为我工作

转到您安装java的jdk路径

例如,在我的PC中,JDK安装在以下路径中

“C:\ProgramFiles\Java\jdk1.7.0_17\”

之后转到lib文件夹,例如“C:\Program Files\Java\jdk1.7.0_17\lib”

在lib目录中有tool.jar文件

复制此文件并将其放在jre7目录的lib文件夹中 例如

“C:\Program Files\Java\jre7\lib”

  • 安装

  • 添加一个名为JAVA\u HOME的系统环境变量,其值为JDK location。
    转到控制面板\系统和安全\系统。高级系统设置、环境变量、系统变量、新。。。示例:
    变量名:JAVA\u HOME
    变量值:C:\Program Files\Java\jdk1.7.0\U 21

  • 关闭/重新打开CMD窗口,以便新变量在尝试重新运行ant命令之前生效


  • 确保将%JAVA\u HOME%和%JAVA\u HOME%/bin路径都添加到PATH变量中

    所有关于将tools.jar复制到正确位置的答案充其量都是一个糟糕的想法


    确保您的IDE可以按照设计和预期的方式找到这些JAR。

    maven编译器插件使用jdk,而不是jre, tools.jar位于C:\Program Files\Java\jdk1.6.0\lib\tools.jar中
    您必须使用jdk而不是jar配置项目JRE系统库。这是最简单的解决方案。

    即使在安装Java JDK并将
    Java\u HOME
    设置为
    。\jdk1.6.0\u 45\bin
    文件夹后,我也遇到了同样的问题

    Ant仍在尝试在
    C:\Program Files\Java\jre6\lib
    文件夹中查找
    tools.jar

    我通过添加
    JAVACMD
    环境变量并将其路径设置为
    jdk
    文件夹中的
    java.exe
    来修复它。

    在我的例子中是
    C:\ProgramFiles\Java\jdk1.6.0\u 45\bin\Java.exe

    如果您在Linux中,您可以通过在系统上安装Java来解决这个问题:

    sudo apt-get install openjdk-7-jdk openjdk-7-jre
    

    在eclipse window>preferences>Java>Installed JRE中,我将目录指向JDK1.7中的JRE目录,并为我处理了该文件
    e、 g C:\Program Files\Java\jdk1.7.0\u 71\jre

    我在linux机器上遇到了同样的问题。一开始我很沮丧,因为我已经安装了JDK和JRE。我正在同时使用1.6、1.7和1.8版本,并且我已经使用了很多替代版本来正确设置所有内容

    这个问题解决起来相当愚蠢,但却违反直觉。当我使用正确的JDK时,我注意到jar maven抱怨的工具的路径——它期望它是正确的

    $JAVA_HOME\..\lib\tools.jar
    
    $JAVA_HOME
    变量直接指向我的
    jdk
    文件夹(
    /usr/local/JAVA
    ,它也是正确的
    $PATH
    条目和可选符号链接)。它实际上在java目录外搜索
    lib
    文件夹,因为:

    $JAVA_HOME\..\lib\tools.jar
    
    决心

    /usr/local/lib/tools.jar
    
    这不是一个有效的位置

    为了解决这个问题,变量
    $JAVA_HOME
    应该指向这个位置
    /usr/local/JAVA/jre
    (假设JDK路径是
    /usr/local/JAVA
    )——实际上在JDK安装目录中有
    jre
    文件夹,每个JDK都有这个文件夹。此新设置将使maven查看JRE目录,该目录是JDK的一部分:

    $JAVA_HOME\..\lib\tools
    
    现在解析为

    /usr/local/java/jre/../lib/tools.jar
    /usr/local/java/lib/tools.jar
    
    Embedded error: tools.jar not found: /usr/lib/jvm/java-7-openjdk-amd64/jre/../lib/tools.jar
    
    sudo apt-get install openjdk-8-jdk openjdk-8-jre
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64