2014-04-09 90 views
0

当我尝试在GL服务器上运行我的程序时,出现错误。另外,我们有两个软件包,一个是所有软件包,另一个是内含Driver.java的驱动程序包。它运行程序。使用ant和build.xml错误

BUILD FAILED 目标“运行”在项目“自动填写”中不存在。

这是为什么?这里是我的build.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<!-- WARNING: Eclipse auto-generated file. 
      Any modifications will be overwritten. 
      To include a user specific buildfile here, simply create one in the same 
      directory with the processing instruction <?eclipse.ant.import?> 
      as the first entry and export the buildfile again. --> 
<project basedir="." default="build" name="AutoFill"> 
<property environment="env"/> 
<property name="debuglevel" value="source,lines,vars"/> 
<property name="target" value="1.7"/> 
<property name="source" value="1.7"/> 
<path id="AutoFill.classpath"> 
    <pathelement location="bin"/> 
</path> 
<target name="init"> 
    <mkdir dir="bin"/> 
    <copy includeemptydirs="false" todir="bin"> 
     <fileset dir="src"> 
      <exclude name="**/*.launch"/> 
      <exclude name="**/*.java"/> 
     </fileset> 
    </copy> 
</target> 
<target name="clean"> 
    <delete dir="bin"/> 
</target> 
<target depends="clean" name="cleanall"/> 
<target depends="build-subprojects,build-project" name="build"/> 
<target name="build-subprojects"/> 
<target depends="init" name="build-project"> 
    <echo message="${ant.project.name}: ${ant.file}"/> 
    <javac debug="true" debuglevel="${debuglevel}" destdir="bin" 
includeantruntime="false" source="${source}" target="${target}"> 
     <src path="src"/> 
     <classpath refid="AutoFill.classpath"/> 
    </javac> 
</target> 
<target description="Build all projects which reference this project. Useful to 
includeantruntime="false" source="${source}" target="${target}"> 
<target description="copy Eclipse compiler jars to ant lib directory" name="init- 
    <copy todir="${ant.library.dir}"> 
     <fileset dir="${ECLIPSE_HOME}/plugins" includes="org.eclipse.jdt.core_*.jar"/> 
    </copy> 
    <unzip dest="${ant.library.dir}"> 
     <patternset includes="jdtCompilerAdapter.jar"/> 
     <fileset dir="${ECLIPSE_HOME}/plugins" includes="org.eclipse.jdt.core_*.jar"/> 
    </unzip> 
</target> 
<target description="compile project with Eclipse compiler" name="build-eclipse 
compiler"> 
    <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/> 
    <antcall target="build"/> 
</target> 
<target name="MaxHeap"> 
    <java classname="proj3.MaxHeap" failonerror="true" fork="yes"> 
     <classpath refid="AutoFill.classpath"/> 
    </java> 
</target> 
<target name="Driver"> 
    <java classname="driver.Driver" failonerror="true" fork="yes"> 
     <classpath refid="AutoFill.classpath"/> 
    </java> 
</target> 
</project> 
+0

你的目标是什么?你的构建参数是什么?它看起来像 - 它说的 - 你没有“跑步”目标。 – Phil

+0

我不太确定。我的驱动程序课程驱动整个程序,那是它? – user2161813

回答

0

我已经在这里重新格式化您的build.xml。有一些问题吧:

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<project basedir="." default="build" name="AutoFill"> 
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/> 
    <property name="target" value="1.7"/> 
    <property name="source" value="1.7"/> 
    <path id="AutoFill.classpath"> 
     <pathelement location="bin"/> 
    </path> 

    <target name="init"> 
     <mkdir dir="bin"/> 
     <copy includeemptydirs="false" todir="bin"> 
      <fileset dir="src"> 
       <exclude name="**/*.launch"/> 
       <exclude name="**/*.java"/> 
      </fileset> 
     </copy> 
    </target> 

    <target name="clean"> 
     <delete dir="bin"/> 
    </target> 

    <target name="cleanall" depends="clean"/> 

    <target name="build" 
     depends="build-subprojects, build-project"/> 

    <target name="build-subprojects"/> 

    <target name="build-project" 
     depends="init"> 
     <echo message="${ant.project.name}: ${ant.file}"/> 
     <javac debug="true" 
      debuglevel="${debuglevel}" 
      destdir="bin" 
      includeantruntime="false" 
      source="${source}" 
      target="${target}"> 
      <src path="src"/> 
      <classpath refid="AutoFill.classpath"/> 
     </javac> 
    </target> 

    <!-- Something happened here... --> 
    <target 
     description="Build all projects which reference this project. Useful to "/> 
    <!-- includeantruntime="false" source="${source}" target="${target}"> --> 

    <!-- Something happened to the name of this target --> 
    <target name="init-" 
     description="copy Eclipse compiler jars to ant lib directory"> 
     <copy todir="${ant.library.dir}"> 
      <fileset dir="${ECLIPSE_HOME}/plugins" 
       includes="org.eclipse.jdt.core_*.jar"/> 
     </copy> 
     <unzip dest="${ant.library.dir}"> 
      <patternset includes="jdtCompilerAdapter.jar"/> 
      <fileset dir="${ECLIPSE_HOME}/plugins" 
       includes="org.eclipse.jdt.core_*.jar"/> 
     </unzip> 
    </target> 

    <!-- Something happened to this target name --> 
    <target name="build-eclipse compiler" 
     description="compile project with Eclipse compiler"> 
     <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/> 
     <antcall target="build"/> 
    </target> 

    <target name="MaxHeap"> 
     <java classname="proj3.MaxHeap" 
      failonerror="true" fork="yes"> 
      <classpath refid="AutoFill.classpath"/> 
     </java> 
    </target> 

    <target name="Driver"> 
     <java classname="driver.Driver" 
      failonerror="true" fork="yes"> 
      <classpath refid="AutoFill.classpath"/> 
     </java> 
    </target> 
</project> 

我不知道你是否miscopied它,但它根本就不是一个有效的Ant构建文件,因为它现在站立。你可能想检查你的帖子,看看你是否错过了任何东西。

您的错误非常简单。您没有名为run的目标。我不知道你为什么要执行它。 (也许是在被搞砸你的build.xml的部分

有效的目标是:

  • 初始化
  • 干净
  • cleanall
  • 构建
  • 建设项目
  • build-subprojects
  • init - ???(Target nam e不完整)
  • build-eclipse编译器(无效的目标名称。不能包含空格)
  • MaxHeap(Java可执行文件)
  • 驱动程序(Java可执行文件)

如果你试图编译这个项目,你要运行的build-projectbuild目标,而不是run。 (build-projectbuild都做同样的事情)。

如果您尝试运行某个程序,MaxHeapDriverbuild.xml中唯一的两个Java可执行目标。

因此,您可能需要执行目标build,然后执行DriverMaxHeap

+0

我让Eclipse构建了一个build.xml。我认为这就是问题所在。 – user2161813

+0

我看到它是一个Eclipse构建的文件。我重新格式化了它,所以我可以阅读它。那时我发现了你发表的几个问题。 –

+0

有没有办法让Eclipse建立一个正确的? – user2161813