【问题标题】:Ant script fails to find javac compilerAnt 脚本找不到 javac 编译器
【发布时间】:2013-06-02 18:37:37
【问题描述】:

我想使用 Ant 在 Eclipse 中构建我的项目。运行 XML 脚本时,出现以下错误:

BUILD FAILED
C:\thesis\100GreatP\eclipse_ws\test\build.xml:82: Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "C:\Program Files\Java\jre7"

它说它无法搜索 javac 编译器,还说它当前设置为C:\Program Files\Java\jre7,但事实并非如此。在环境变量中,我也定义了JAVA_HOME=C:\Program Files\Java\jdk1.7.0_21\bin;PATH=C:\Program Files\Java\jdk1.7.0_21\bin;。我的 CLASSPATH 变量是这样定义的 - CLASSPATH=C:\Program Files\Java\jre7\lib;。任何想法还有什么可能导致这种错误?谢谢。

【问题讨论】:

    标签: eclipse ant environment-variables javac


    【解决方案1】:

    您是否查看过ant -diagnostics 告诉您的有关您的JAVA_HOME 的内容?

    可能您的JAVA_HOME 也不正确;它不应该是C:\Program Files\Java\jdk1.7.0_21\bin,而最好是C:\Program Files\Java\jdk1.7.0_21

    【讨论】:

      【解决方案2】:

      如果你进入你的 Eclipse 首选项,你可以看到你的 Eclipse ant 使用了哪个 jdk:Window->Preferences->Ant->Runtime->Classpath->Global Entries。

      在“全局条目”中检查 tools.jar 的路径。如果您想使用另一个 javac,只需使用“添加外部 Jar”选项指向另一个 tools.jar。

      tools.jar 通常可以在 /lib 目录下的任何 jdk 中找到。

      按出现顺序定义的第一个 tools.jar 将由您的 eclipse ant 使用。

      【讨论】:

        【解决方案3】:

        我在两个不同版本的 Eclipse 中遇到了同样的错误。

        第一次使用开普勒

        我使用 Eclipse/Kepler 遇到了这个问题。最初我发现我没有安装JDK;我推断 Eclipse 必须有一个编译器,所以我应该能够在没有 JDK 的情况下做到这一点。

        果然 - this Eclipse Wiki FAQ 指示我将以下内容添加到我的 Ant 构建文件中:

        <property name="build.compiler" 
           value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
        

        我收到了关于泛型使用的投诉,所以我发现我必须再添加两行 - 这就是最终奏效的方法:

        <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
        <property name="ant.build.javac.source" value="1.6"/>
        <property name="ant.build.javac.target" value="1.6"/>
        

        第二次使用伽利略

        上面的解决方案在 Eclipse Galileo 中对我不起作用。相反,我执行了以下操作来推出MichalB 的解决方案(并且有效):

        1. 确保我安装了 JDK!
        2. 确保我为 JAVA_HOME 选择的值是bin 文件夹上方目录的路径 - 在我的例子中是C:\Program Files (x86)\Java\jdk1.6.0_16
        3. 确保我通过右键单击This PC(我有Win8.1)、选择Properties、单击Advanced 并将System 环境变量JAVA_HOME 设置为该值来设置环境变量JAVA_HOME。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-01-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-12-19
          相关资源
          最近更新 更多