Хадсон - Maven не работает (не может создать /dev/null/.m2) на Tomcat-6 - Gentoo - PullRequest
5 голосов
/ 02 июня 2010

У меня серьезные проблемы с запуском и запуском Hudson на сервере gentoo с Tomcat 6. Я могу развернуть Hudson просто отлично, и я могу просматривать веб-приложение, настраивать его, настраивать сборки и т. Д.

Однако, когда я пытаюсь запустить сборку (например, «чистый тест» в проекте Maven2), я получаю эту ошибку

ERROR: Failed to create /dev/null/.m2

Я google'd, и для некоторых это, кажется, помогает поместить -DHUDSON_HOME = / home / hudson и -DMAVEN_HOME = / home / hudson в /etc/init.d/tomcat-6 в JAVA_OPTS. Тем не менее, я пробовал это и , делая то же самое в /etc/conf.d/tomcat-6, но я все еще получаю эту ошибку.

Кто-нибудь из вас сталкивался с этим раньше?

Ответы [ 3 ]

8 голосов
/ 02 июня 2010

Вы, вероятно, запускаете Hudson под особым пользователем. Попробуйте установить домашний каталог этого пользователя в / home / hudson в / etc / passwd с помощью команды vipw.

2 голосов
/ 12 июня 2010

Другим способом будет отключение конфигурации на уровне пользователя с помощью $M2_HOME/conf/settings.xml, но решение Jouni - лучший выбор.

1 голос
/ 29 октября 2011

Если вы не можете изменить домашний каталог пользователя, вы можете обмануть Хадсона / Дженкинса, заставив его думать, что домашний каталог пользователя - это другой каталог (ранее созданный, к которому у пользователя есть права на чтение и запись). Затем передайте его в качестве аргумента в сценарии запуска Hudson / Jenkins, например ::

export JAVA_OPTS="$JAVA_OPTS -Duser.home=<path to the directory>"
...