2011-01-11 73 views
0

Wirklich hoffe, Sie können helfen. Ich habe CruiseControl so konfiguriert, dass ein Java-Projekt auf einem freien Windows XP-Computer im Büro erstellt wird, aber ich finde Fehler mit einem ClassDefNotFound, wenn CruiseControl über einen Windows-Dienst aufgerufen wird.CruiseControl: Ausführen von der Befehlszeile = Erfolg, wie Windows-Dienst = Fehler

Der genaue Fehler ist: java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher

Ich verstehe dies in der ant-launcher.jar Datei zu sein.

Ich habe diese Datei (und alle anderen 1.8.2-JAR-Dateien) in das lib-Unterverzeichnis von CruiseControl gestellt. Wenn auf der Kommandozeile aus dem CruiseControl- Verzeichnis mit dem folgenden Befehl ausführen, bekomme ich keine Classpath Fehler:

cruisecontrol --configfile config.xml 

mir wirklich bin die Hoffnung, diese entweder trivial zu einem frischen Paar Augen ist, oder eine Glocke klingelt mit jemandem, der diesen Weg vorher beschritten hat.

Danke! Ben

+1

Wilde guess- es nur der Benutzerkontext sein könnte? Versuchen Sie, Ihren Benutzer als laufenden Benutzer zu konfigurieren (geben Sie die Dienste von XP ein, klicken Sie mit der rechten Maustaste auf Eigenschaften im CruiseControl.Net-Dienst, wechseln Sie zur Registerkarte Anmelden und legen Sie einen anderen Benutzer fest). –

Antwort

1

Ihre Umgebungsvariablen sind wahrscheinlich als Benutzervariablen und nicht als Systemvariablen definiert. Dienste werden nicht als normaler Benutzer ausgeführt.

0

Versuchen Sie, die cruisecontrol-launcher.jar-Datei von Ihrem Tempomat-Installationspfad aufzurufen. & Stellen Sie außerdem sicher, dass der Tempomat-Prozess als Dienst gestartet wurde.

zB: -

java -jar C:\Program Files\CruiseControl\lib\cruisecontrol-launcher.jar