Java ant在eclipse中执行,但不从命令行执行

Java ant在eclipse中执行,但不从命令行执行,java,eclipse,ant,Java,Eclipse,Ant,我有一个关于蚂蚁的基本问题。当我执行Eclipse中的build.xml文件时 运行方式->Ant构建 然后一切正常。但是,当我尝试从命令行运行相同的build.xml文件时 ant-f build.xml 对于相同的类,我会得到如下错误: Error: `package com.sun.image.codec.jpeg` does not exist 有什么想法,我该怎么办 感谢因为从错误中可以清楚地看出,它所说的包com.sun.image.codec.jpeg不存在,但不存在 在ecli

我有一个关于蚂蚁的基本问题。当我执行
Eclipse
中的
build.xml
文件时

运行方式->Ant构建

然后一切正常。但是,当我尝试从命令行运行相同的
build.xml
文件时

ant-f build.xml

对于相同的类,我会得到如下错误:

Error: `package com.sun.image.codec.jpeg` does not exist
有什么想法,我该怎么办


感谢

因为从错误中可以清楚地看出,它所说的包com.sun.image.codec.jpeg不存在,但不存在

在eclipse中发生的事情是,jar/包位于项目的构建路径中,因此它被包含在eclipse的构建过程中


作为一种解决方案,尝试将该jar文件包含在ant的构建路径中,即将该url放入ant脚本中,然后尝试从终端构建项目。它应该有用。

从你的简短描述中看不出太多。第一个问题是这是Ant本身的问题还是您的
build.xml
文件的问题

Eclipse安装自己版本的Ant。我建议您从下载最新版本。它的版本是1.9.1或1.9.2

现在,让我们做一个简单的测试。编写一个简单的build.xml:

<project>
   <echo>Hello, world!</echo>
</project>

你好,世界!
然后,运行它。如果这样做有效,问题可能是您的
build.xml
文件,它可能依赖于嵌入的EclipseJAR

然而,在中查找这个特定错误,我发现它依赖于JavaJDK本身

同样,Eclipse将附带一个嵌入式JDK(它需要一个JRE来运行,但需要JDK来编译)。您的系统上是否安装了Java1.6或Java1.7JDK?在你的道路上有它吗?您的终端上是否设置了指向它的
$JAVA_HOME
?是否导出了
$JAVA_HOME
(如果您使用的是Mac、Linux或Unix)


尝试以上每一种方法,然后用您的发现更新您的问题。

检查这不是ANT的问题,我已经成功地构建了简单的程序,ANT正在构建我的build.xml文件的很大一部分,但是,当涉及到compiletin部分时,我得到了这个错误,如果我可以向ANT添加一些输入参数,这样就可以包含标准java库,那么就不必包含作为JDK本身一部分的标准java库。您是否有指向JDK而不是JRE的
$JAVA_HOME
?你使用的是什么版本的Ant?它是您安装的还是Eclipse的一部分?ýehp,它成功了。谢谢我将“c:\ProgramFiles(x86)\Java\jre7\lib\”放在build.xml文件中,它成功了。是否可以在命令行中将此路径作为ANT参数指定?我不想把它放在build.xml文件中。谢谢!不要引用JRE!从Oracle下载JDK。然后将
%JAVA\u HOME%指向该路径,并将
%JAVA\u HOME/bin`放在路径前面
C:\Windows\system32
前面。您需要确保您正在使用JDK!您好,David,我的系统已经按照您所描述的进行了配置,但这并不能解决我的问题,因为我需要的库“rt.jar”位于“jre”的“lib”文件夹中,而不是“jdk”。问题在于,在构建“build.xml”文件时,“ANT 1.9.2”默认不包含此库。正如Tushar所指出的,当在Eclipse中构建时,Eclipse包含这些库,但我不知道如何在从命令行执行时将ANT指向包含libraray