![]() |
[Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe hier ein Ant Build Script:
Code:
Wenn ich es auch Eclipse aus ausführe, klappt alles wunderbar. Rufe ich es über die Konsole auf mit
<?xml version="1.0"?>
<project name="Clover" default="" basedir="."> <description>Build file</description> <property name="src_dir" location="./src"/> <property name="srcTest_dir" location="./srcTest"/> <property name="bin_dir" location="./bin"/> <target name="CloverSetup"> <clover-setup initstring="CloverDB/clover_coverage.db"/> </target> <target name="Cleanup"> <delete verbose="true"> <fileset dir="${bin_dir}"> <include name="*.class"/> </fileset> </delete> </target> <target name="BuildProject"> <mkdir dir="${bin_dir}"/> <javac destdir="${bin_dir}" verbose="true"> <src> <pathelement location="${src_dir}"/> <pathelement location="${srcTest_dir}"/> </src> </javac> </target> <target name="UnitTests"> <junit printSummary="true" showOutput="true"> <formatter type="brief" usefile="false"/> <classpath > <pathelement location="${bin_dir}"/> </classpath> <batchtest> <fileset dir="${bin_dir}"> <include name="*Test.class"/> </fileset> </batchtest> </junit> </target> <target name="CloverReportHTML"> <clover-report> <current outfile="report_html"> <format type="html"/> </current> </clover-report> </target> <target name="CloverReportXML"> <clover-report> <current outfile="report_xml\report.xml"> <format type="xml"/> </current> </clover-report> </target> </project>
Code:
erhalte ich folgende Ausgabe:
ant -v -k -buildfile build.xml
Zitat:
Im Build Dialog sind noch Classpath Variablen deklariert. Muss ich die auch im Build Skript deklarieren, wenn ich das Script über die Konsole ausführe? Und wenn ja, wie muss ich sie deklarieren? |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Zum Ausführen eines Targets in der build.xml braucht man nur ant <target> einzugeben.
Zum Beispiel:
Code:
Standardmäßig wird die build.xml als Buildskript verwendet.
ant Cleanup
Das Projekt verwendet kein Default-Target, daher passiert bei einfachem Aufruf von ant ohne einen Targetnamen nichts. |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Ach so. Aber wie sage ich Ant wo er die Build.xml mit der Target findet? Und wie kann ich mehrere Targets hintereinander ausführen?
|
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Zitat:
Zum Angeben eines bestimmten buildfiles:
Code:
Zum Ausführen mehrerer Targets zum Beispiel:
ant -f <file> use given buildfile
Code:
Oder mit depends attributen in der target Definition, diese können auch Listen abhängiger targets enthalten.
ant target1 target2 target3
Code:
<target name="build-distribution" depends="compile,test,zip">
... </target> |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Äh ja, hätte ich auch drauf kommen können.
Mein Aufruf sieht jetzt so aus:
Code:
Aber in der Logdatei steht nur
ant -f "C:\Dokumente und Einstellungen\mp\Eigene Dateien\Datawerk\Projekte\Java Unit Testing Build Automation\Demos\AntClover\build.xml" CloverSetup Cleanup BuildProject UnitTests CloverReportHTML CloverReportXML > build.log
pause Zitat:
Was könnte ich denn noch falsch machen? |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
OK, irgendwas mit Clover stimmt da nicht. Ich habe es mal rausgenommen.
Code:
So jetzt findet er die JUnit nicht. ich habe schon alle Varianten ausprobiert mit <classpath>. Aber es will nicht.
ant Cleanup BuildProject UnitTests CloverReportHTML CloverReportXML > build.log
Zitat:
Code:
<classpath>
<pathelement path="${classpath}"/> <pathelement location="lib/helper.jar"/> </classpath> Zitat:
|
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Die Dokumentation zum JUnit Task in Ant ist hier:
![]() es gibt fünf Möglichkeiten, die erste ("Put both junit.jar and ant-junit.jar in ANT_HOME/lib") ist am einfachsten. Die vierte, mit <classpath> Anweisungen für beide JUnit Dateien (junit.jar und ant-junit.jar), geht nur innerhalb eines taskdef Elements, d.h. man würde junit als neuen Task definieren, das geht, ist aber umständlich weil es junit als Task ja schon gibt. |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
ja, die Doku habe ich auch gefunden, nur war sie nicht sehr hilfreich.
Ich habe es jetzt so probiert:
Code:
Das will auch nicht.
<path id="classpath.junit">
<pathelement location="C:/Programme/Eclipse/plugins/org.junit4_4.3.1/junit.jar" /> </path> <target name="UnitTests"> <junit printSummary="true" showOutput="true"> <classpath refid="classpath.junit" /> <formatter type="brief" usefile="false"/> <classpath > <pathelement location="${bin_dir}"/> </classpath> <batchtest> <fileset dir="${bin_dir}"> <include name="*Test.class"/> </fileset> </batchtest> </junit> </target> Eigentlich wollte ich es ja vermeiden Dateien rumzukopieren. Werde ich aber dann wohl machen. Vielen Dank für deine Hilfe. |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Zitat:
Den classpath von junit kann man hier nicht mehr setzen, das muss schon vorher geschehen, damit JUnit überhaupt ausgeführt werden kann. u.a. kann man auch Ant per -lib Parameter den Pfad zu JUnit übergeben, dann muss man keine Dateien kopieren. |
AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
Ich habe sie jetzt einfach kopiert. Geht. Jetzt muss ich nur noch Clover mit Ant zum laufen bringen. :? Da verabschiedet er sich einfach:
Zitat:
Code:
ant Cleanup CloverSetup BuildProject UnitTests CloverReportHTML CloverReportXML > build.log
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz