2012-04-11 13 views
1

Dies ist mein erstes Java-Projekt, das Ameise entfaltet. Ich muss meinen Code bald einreichen und habe keine Zeit für Hello World. Ich habe versucht, eine build.xml für mein Projekt zu erstellen, nachdem ich ein bisschen Google gemacht habe, aber jetzt stecke ich fest!Ameise javadoc baut nicht

Die Ant Javadoc funktioniert nicht für mich. Unten ist der Fehler zeigt es, wenn der Befehl gegeben: ant javadoc -debug

Attempting to create object of type org.apache.tools.ant.helper.DefaultExecutor 
Adding reference: ant.executor 

BUILD FAILED 
Target "javadoc" does not exist in the project "Ant-Test". 
    at org.apache.tools.ant.Project.tsort(Project.java:1912) 
    at org.apache.tools.ant.Project.topoSort(Project.java:1820) 
    at org.apache.tools.ant.Project.topoSort(Project.java:1783) 
    at org.apache.tools.ant.Project.executeTarget(Project.java:1368) 
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExe 
cutor.java:41) 
    at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
    at org.apache.tools.ant.Main.runBuild(Main.java:811) 
    at org.apache.tools.ant.Main.startAnt(Main.java:217) 
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) 

Total time: 0 seconds 

das Paket unter denen ich meine alle vier Klassen erstellt haben

package org.acrusys.customers; 

und last but not least unten ist das Verzeichnis

Struktur
Directory of C:\Users\Salman\JavaWorkspace\Arcusys\src\org\acrusys\customers 

04/11/2012 07:40 PM <DIR>   . 
04/11/2012 07:40 PM <DIR>   .. 
04/11/2012 06:20 PM    757 AllCustomers.class 
04/11/2012 12:22 PM    520 AllCustomers.java 
04/11/2012 07:40 PM <DIR>   build 
04/11/2012 07:30 PM    1,746 build.xml 
04/11/2012 03:09 PM <DIR>   classes 
04/11/2012 06:20 PM    1,470 Customer.class 
04/11/2012 05:27 PM    1,456 Customer.java 
04/11/2012 06:20 PM    1,396 CustomerFullAddress.class 
04/10/2012 11:55 PM    1,343 CustomerFullAddress.java 
04/11/2012 06:20 PM    2,890 CustomerMain.class 
04/11/2012 06:19 PM    2,392 CustomerMain.java 
04/11/2012 07:40 PM <DIR>   dist 
04/11/2012 07:40 PM <DIR>   docs 
04/11/2012 06:55 PM <DIR>   src 

Hier ist die Javadoc (i vergessen es zunächst einfügen)

<target name="docs" depends="compile"> 
<javadoc packagenames="org.acrusys.customers.*" sourcepath="${src.dir}" destdir="${docs.dir}"> 
<!-- Define which files/directory should get included, we include all --> 
<fileset dir="${src.dir}"> 
<include name="**" /> 
</fileset> 
</javadoc> 
</target> 
+0

@ LivingThing: Warum sind die .class-Dateien im selben Verzeichnis wie Quellen? Sie sollten sich in einem anderen Verzeichnis befinden (zB build/classes). – Jayan

+0

Wie ist das "Javadoc"? Verwenden Sie außerdem die von der Site bereitgestellte Codeformatierung und den Einzug. –

+0

meine schlechte, danke dave für Hinweis darauf – LivingThing

Antwort

1

Javadoc ist normalerweise mit Dokumentation verbunden, die Sie in Ihren Code in Form von Kommentaren schreiben, und wird automatisch in HTML-Dateien extrahiert.

Try running: ant jar

Das Ziel, das Sie in Ihren Build-Datei angegeben ist "jar". Dies wird nicht alle Ihre Probleme beheben, da ich Ihr Kompilierungsziel nicht sehen kann. Es sieht auch so aus, als wäre Ihr Quellcode an der falschen Stelle (er sollte sich im src-Verzeichnis befinden, unter der richtigen Paketstruktur), und die gebauten .class-Dateien landen auch nicht im Build-Verzeichnis.

1

Sind Sie tun:

$ ant javadoc 

oder

$ ant docs 

Sie sind Zielname ist docs und nicht javadoc. Sie sollten das letztere tun.

+0

danke..das ist der schlechte Teil der Sache in Eile, sowieso jetzt habe ich angefangen, meine Klasse und Quelldatei zuerst zu organisieren, wie in dem Beitrag oben erwähnt, nachdem das Ihren Punkt halten wird im Verstand, bevor Sie sehen, ob es dann funktioniert .. – LivingThing

1

Dieser Code funktioniert für mich. Ich gebe hier nur das Ziel, das du brauchst, um dieses Ziel zu benutzen.

<target name="docs" depends="compile"> 
    <javadoc packagenames="src" sourcepath="${src.dir}" destdir="${docs.dir}"> 
     <!-- Define which files/directory should get included, we include all --> 
     <fileset dir="${src.dir}"> 
       <include name="**" /> 
      </fileset> 
    </javadoc> 
    </target> 

Nach dem Ausführen dieses Ziels werden Sie alle Dokumente in Ihren Doc-Ordner erhalten.