2010-01-21 2 views
4

Я пытаюсь получить наш CI-сервер Hudson для запуска Grails задачи и установки Grails-плагин, но похоже, зависимости с плющом не мог быть решен ...Хадсон не любит Grails

[projectx] $ /usr/share/grails/bin/grails prod war projectx.war 
Welcome to Grails 1.2.0 - http://grails.org/ 
Licensed under Apache Standard License 2.0 
Grails home is set to: /usr/share/grails 

Base Directory: /var/local/hudson/jobs/projectx/workspace/projectx 
Resolving dependencies... 
Error executing script War: /usr/share/tomcat5.5/.ivy2/cache/resolved-projectx-projectx-0.1.xml (No such file or directory) 
java.io.FileNotFoundException: /usr/share/tomcat5.5/.ivy2/cache/resolved-projectx-projectx-0.1.xml (No such file or directory) 
    at java.io.FileOutputStream.open(Native Method) ...

Кто-нибудь знает, как заставить это работать?

Спасибо большое!

+0

Вы установили рабочий каталог в настройке Грауля-Плагина Хадсона? –

ответ

3

Похоже, что пользователь, который выполняется кот, как настроен, чтобы /usr/share/tomcat5.5 в качестве домашнего каталога, и вы не имеете права на запись в этот каталог (и, вероятно, не должны)

Я предположите, что вам нужно изменить пользователя, который работает tomcat, или пользователя, выполняющего работу Hudson Job, чтобы иметь действительный домашний каталог.

+0

Согласен, это связано с тем, что файловые разрешения останавливают создание папки .ivy. – leebutts

+0

Спасибо, это меня немного больше. Я создал/home/tomcat с соответствующими разрешениями и изменил дом tomcat, но, к сожалению, есть еще одна ошибка ... После некоторых компиляции, копирования и mkdir-ing процесс сборки завершился с ошибкой: Ошибка при выполнении скрипта War :: Заменить: исходный файл /home/tomcat55/.grails/1.2.0/projects/comtecdb/stage/WEB-INF/applicationContext.xml не существует gant.TargetExecutionException:: заменить: исходный файл/home/tomcat55/.grails/1.2.0/projects/comtecdb/stage/WEB-INF/applicationContext.xml не существует ... – Jan

+2

SOLVED! Сначала я запускаю обновление grails --non-interactive, и он работает. – Jan

0

Hudson поддерживает сборку на основе maven очень хорошо, поэтому вы можете просто использовать плагин Grails Maven http://www.grails.org/Maven+Integration и указать hudson в файле maven pom и уйти.

1

Run

grails upgrade 

и он будет работать потом. Я попытался удалить папку .grails, и она не сработала и обнаружила, что обновление работает случайно.

На Jenkins вы можете запустить его с помощью не-интерактивного переключателя.

Кто-нибудь понял, почему это происходит?

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