2014-04-09 108 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