2009-05-21 1 views
1

Я создаю новую задачу Hudson (в WinXP) для проекта, который генерирует файлы javascript, и выполняет преобразования xslt как часть процесса сборки.Hudson build не работает при запуске в браузере, но работает из командной строки

Ant build не работает при преобразовании XSL при запуске из Hudson, но отлично работает, когда одна и та же сборка на одной и той же базе данных (то есть в рабочей области Хадсона) запускается из командной строки.

Сообщение неудачи:

линии 208: Переменная «экран» многократно определяется в той же области.

Я попытался настроить Хадсона на использование обоих муравьев напрямую и использовать пакетный скрипт - оба отказались в Хадсоне.

Я пробовал в Firefox, IE6 и Chrome и видел ту же проблему.

Может кто-нибудь предложить, как мы можем решить эту проблему с Хадсоном?

ответ

1

Проблема решена.

Наша сборка на самом деле зависит от jdk 1.4.2, и Хадсон, похоже, работает с использованием 1.6. Когда я запускал Хадсон в качестве службы, он работал как мой локальный пользователь, а это означало, что он взял переменную среды 1.4.2 JAVA_HOME - и поэтому работал.

Я думаю, еще одно возможное решение - настроить Hudson на использование 1.4.2 по умолчанию.

0

Я бы предположил, что это не проблема с Хадсоном напрямую, как это происходит со сценарием сборки и/или самой средой.

Является ли ваш скрипт сборки зависимым от определенных переменных среды, определяемых или, что еще хуже, заданием, выполняемым из определенной структуры каталогов (т.е. оно работает, если оно выполняется из-под/home/mash/blah, но не из-под другого каталога, например/TMP)? Является ли скрипт сборки ссылкой на внешние файлы по относительным путям?

Это то, что я хотел бы изучить. Для переменных среды вы можете сказать Хадсону передать их в Ant. По другим вопросам вы, вероятно, захотите изменить сценарий сборки. Проверьте вывод консоли, предоставленный Hudson, и, возможно, установите Ant для печати сообщений verbose/debug, чтобы получить лучшее представление об окружении/файлах.

Смежные вопросы