2009-05-21 11 views
1

Ich richte eine neue Hudson-Aufgabe (auf WinXP) für ein Projekt, das Javascript-Dateien generiert, und führt XSLT-Transformationen als Teil des Build-Prozesses.Hudson Build schlägt fehl, wenn im Browser ausgeführt wird, aber funktioniert von der Befehlszeile

Der Ameisen-Build schlägt bei den XSL-Transformationen fehl, wenn er von Hudson ausgeführt wird. Er funktioniert jedoch, wenn derselbe Build auf der gleichen Codebasis (dh in Hudsons Arbeitsbereich) von der Befehlszeile aus ausgeführt wird.

Die Fehlermeldung ist:

Leitung 208: Variable 'screen' mehrfach im gleichen Umfang definiert.

Ich habe versucht, Hudson zu konfigurieren, um beide ant direkt zu verwenden und ein Stapel-Skript zu verwenden - beides schlägt in Hudson fehl.

Ich habe in Firefox, IE6 und Chrome versucht und habe das gleiche Problem gesehen.

Kann jemand vorschlagen, wie wir dieses Problem mit Hudson umgehen können?

Antwort

1

Problem gelöst.

Unser Build ist tatsächlich abhängig von jdk 1.4.2, und Hudson scheint mit 1.6 zu laufen. Wenn ich Hudson so eingestellt habe, dass es als Dienst ausgeführt wird, wird es als lokaler Benutzer ausgeführt, was bedeutet, dass es die Umgebungsvariable 1.4.2 JAVA_HOME abfragt - und damit funktioniert.

Ich denke, eine andere mögliche Lösung ist, Hudson zu konfigurieren, 1.4.2 standardmäßig zu verwenden.

0

Ich würde annehmen, das ist kein Problem mit Hudson direkt, wie es mit dem Build-Skript und/oder der Umgebung selbst ist.

Ist Ihr Build Skript darauf angewiesen, dass bestimmte Umgebungsvariablen definiert werden, oder schlimmer noch, der Job läuft innerhalb einer bestimmten Verzeichnisstruktur (dh er läuft unter/home/mash/blah aber nicht unter einem anderen Verzeichnis wie/tmp)? Verweist das Erstellungsskript auf externe Dateien über relative Pfade?

Dies sind die Dinge, die ich untersuchen würde. Bei Umgebungsvariablen können Sie Hudson anweisen, diese in Ant zu übergeben. Bei den anderen Problemen möchten Sie wahrscheinlich Ihr Build-Skript ändern. Überprüfen Sie die Konsolenausgabe, die von Hudson bereitgestellt wird, und legen Sie Ant möglicherweise fest, um ausführliche/Debug-Nachrichten zu drucken, um eine bessere Idee über die Umgebung/die Dateipfade zu erhalten.

Verwandte Themen