Ant命令运行问题

时间:2014-02-22 02:03:00

标签: java ant build.xml

所以我无法通过ant build.xml文件运行我的项目。项目运行

正常执行时,图片链接发布在下面:

http://puu.sh/75krJ.png

但是,当项目通过build.xml文件运行时,会产生以下错误:

[代码]

  <description>
    Ant Build File for myproj0/
  </description>

  <!-- Property Names -->
  <property name="src" location="src" />
  <property name="build" location="build" />
  <property name="main.class" value="driver.Driver"/>
  <property name="doc" location="doc" />

  <!-- initializes the program -->
  <target name="init">
    <mkdir dir="${build}"/>
    <mkdir dir="${src}"/> 
  </target>

  <target name="compile" depends="init" description="Compiles source code">
    <javac srcdir="${src}" destdir="${build}"/>
  </target>

  <target name="run" description="Runs the main">
    <java dir="${build}" classname="${main.class}" fork="yes" >
      <classpath>
    <pathelement location="${build}" />
      </classpath>
     </java>
  </target>

  <target name="clean" description="Deletes the created directories">
    <delete dir="${build}"/>
    <delete dir="bin"/>
    <delete dir="doc"/>
  </target>

  <target name="doc" description="Generates the Javadoc" depends="compile">
    <javadoc sourcepath="${src}" destdir="${doc}" />
  </target>

</project>

[/代码]

错误:

http://puu.sh/75kRy.png

我没有发布我的作业代码,因为学校的其他人可能也在寻找这个网站寻求帮助

任何帮助将不胜感激:D

1 个答案:

答案 0 :(得分:3)

您的ant脚本编译java类并将它们放入build目录(应该是这样的)。这发生在名为compile的目标中。我假设您已将输入文件放入Eclipse中的src文件夹中。 Eclipse还有一个构建目录 - 通常是bin - 并自动复制这些文件。 (设置中有过滤器,用于定义不会复制的文件类型。)

ant脚本不会复制输入文件。因此,从ant脚本运行时无法找到它,但是从Eclipse运行时会发现它。

要复制输入文件,请将其添加到编译目标:

  <copy todir="${build}">
     <fileset dir="${src}" includes="*.txt" />
  </copy>

这会将所有.txt个文件从src目录复制到构建目录。

(注意:如上所述,我假设你的文本文件在源目录中。如果不是,这可能不是正确的解决方案。)