Frage

Ich gründe meinen ersten Job in Hudson, und ich bin in einige Probleme laufen. Der Auftrag überwacht zwei Repositories, eine unserer DB-Setup-Dateien, der andere ein Stück Code enthält, die überprüft und testet die DB-Setup-Dateien.

Ein Teil des Codes, der die validierten Setup-Dateien in PostgreSQL, mit dem psql Kommandozeilen-Tool, mit Runtime.exec () werfen läuft wird. Dieser Code funktioniert perfekt auf meinem Rechner, aber wenn Hudson führt sie (andere Maschine) bekomme ich folgende Fehlermeldung:

java.io.IOException: Cannot run program "psql": CreateProcess error=2, The system cannot find the file specified

psql.exe ist auf dem Weg, und ich kann es ausführen, indem das Ganze in der Befehlszeile, von der gleichen Stelle eingeben Hudson den Code ausgeführt wird. Die Datei, die in psql weitergegeben werden ist gemeint vorhanden ist.

Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich finde, dass Sie das Programm im Pfad haben müssen, wenn Sie hudson oder den Slave starten. Trotz der Fähigkeit, den Weg in hudson setzt es nicht zu funktionieren scheint. Sie können auch den vollständigen Pfad in dem Befehl gegeben, der aus Sicht der Sicherheit ohnehin wirklich eine gute Idee ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top