Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole (https://www.delphipraxis.net/162851-%5Bjava-ant%5D-ant-build-skript-funktioniert-nicht-bei-start-aus-konsole.html)

alcaeus 10. Sep 2011 07:02

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Moin Luckie,

beachte bitte dass Eclipse eine eigene Ant-Installation mitbringt. Wenn du die im Path verlinkt hast, ist alles super und die Libraries sind da. Wenn du aber eine eigene Ant-Installation gemacht hast verwenden Eclipse und dein "normales" Ant verschiedene Library-Verzeichnisse, in denen eventuell nicht alle benoetigten Libraries vorhanden sind.

Ein paar kleine Tipps zu Ant:
  • Das default-Attribut im project-Tag gibt an, welches Target standardmaessig ausgefuehrt wird. Dann brauchst du nur noch "ant" auszufuehren und schon laeuft alles ;)
  • Wenn du den Targets eine Description gibst, kannst du dir mit "ant -p" anzeigen lassen, welche Targets es gibt und was sie machen. Das ist praktisch wenn man mal mit fremden Ant-Files konfrontiert wird. In der Liste werden Targets ohne Description gar nicht angezeigt - so kannst du sie nach aussen hin wenigstens verschleiern.
  • Zu den Classpaths: benutze nie absolute Pfade. Verwende stattdessen die Property ${ant.library.dir} um dich ins lib-Verzeichnis deiner Ant-Installation leiten zu lassen, wo das Zeug liegen sollte.

Greetz
alcaeus

Luckie 10. Sep 2011 10:27

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Ich habe jetzt alles zum Laufen bekommen. allerdings war das eigentlich nur ein Teilerfolg. Ich dachte, wenn ich es von der Konsole aus zum Laufen bringe, dann läuft es auch aus Bamboo raus, aber das war ein Trugschluss. :(

alcaeus 10. Sep 2011 15:44

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Zitat:

Zitat von Luckie (Beitrag 1123110)
Ich habe jetzt alles zum Laufen bekommen. allerdings war das eigentlich nur ein Teilerfolg. Ich dachte, wenn ich es von der Konsole aus zum Laufen bringe, dann läuft es auch aus Bamboo raus, aber das war ein Trugschluss. :(

Nein, schliesslich musst du auch schauen dass auf dem Bamboo-Server alles noetige installiert ist. Was genau laeuft denn in Bamboo nicht?

Greetz
alcaeus

Luckie 10. Sep 2011 16:00

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Ich habe Bamboo lokal installiert und es läuft als Service. Ant ist lokal installiert (außerhalb Eclipse) und Clover auch noch mal lokal (außerhalb Eclipse). In der Konfiguration kann ich Ant über die Konsole aufrufen und das Projekt wird Compiliert, die JUnit Test werden ausgeführt und der Clover Report wird erstellt. Mit Bamboo habe ich für jede Ant Target einen Job/Task erstellt. Wenn ich den Plan aber ausführe, bekomme ich zum Schluss eine Fehlermeldung, mit der ich nichts anfangen kann. Wie sie genau heißt, kann ich jetzt nicht sagen, da muss ich im Büro am Monat nachgucken. aber ich werde auch noch mal gucken, ob man bei Bamboo im Administratoren Panel noch was konfigurieren muss/kann.

Luckie 12. Sep 2011 09:44

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
So, ich habe noch mal von vorne angefangen und in Bamboo für das Projekt einen neuen Plan erstellt, basierend auf dieser Build-XML Datei:
Code:
<?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"/>   
   
   <property name="clover.jar" location="C:/Programme/Clover/lib/clover.jar"/>
   <taskdef resource="cloverlib.xml" classpath="${clover.jar}"/>
      
    <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"/> -->
         <formatter type="xml"/>
         <classpath >
            <pathelement location="${bin_dir}"/>
            <pathelement path="${clover.jar}"/>
         </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">
            <!-- <current outfile="C:\Dokumente und Einstellungen\mp\bamboo-home\xml-data\build-dir\FB-TD-JOB1\report.xml"> -->
               <format type="xml"/>
            </current>
         </clover-report>
   </target>
</project>
Diese kann ich mit Ant über die Konsole aufrufen und es wird jede Target ausgeführt. Diese Build-Datei funktionieert also.

Jetzt habe ich mit Bamboo einen neuen Plan erstellt und dort einen Task angelegt, der nur die Target "Cleanup" ausführt. Es wird kein Report generiert. Und nach dem der Plan ausgeführt wurde bekomme ich folgende Fehlermeldung:
Zitat:

No failed tests found, a possible compilation error occurred.
Die Target wurde auch nicht ausgeführt. In dem Verzeichnis befinden sich weiterhin die alten Dateien.

mjustin 12. Sep 2011 09:51

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Zitat:

Zitat von Luckie (Beitrag 1123158)
Ich habe Bamboo lokal installiert und es läuft als Service.


Unter welchem Benutzeraccount? Bei Hudson (oder Jenkins) als Service ist es oft besser einen anderen als den Systemaccount zu verwenden, dem Rechte oder Umgebungsvariablen fehlen können.

Luckie 12. Sep 2011 09:57

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Ich habe den Dienst als Administrator gestartet. Aber was sollte ihm fehlen? Den Pfad zu Ant habe ich bei Bamboo konfiguriert. Wo der Plan die Build-XML Datei findet habe ich ihm auch gesagt.

alcaeus 12. Sep 2011 19:09

AW: [Java, Ant] Ant Build Skript funktioniert nicht bei Start aus Konsole
 
Da ich selbst Jenkins benutze und bisher die Finger von Bamboo gelassen hab muss ich mich leider dumm stellen :stupid:

Kannst du bei Bamboo irgendwelche Parameter fuer den Ant-Aufruf konfigurieren? Wenn ja, kannst du Ant bitte mit -v (fuer verbose) oder noch besser -d (fuer Debug) starten und gucken ob da was rauskommt? Ich kenne es von Jenkins dass man dort die Kommandozeilenausgabe des Builds angucken kann und damit nachvollziehen kann, warum oder weshalb der Build fehlgeschlagen ist.

Greetz
alcaeus


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:23 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz