2010-04-09 2 views
0

Я создал проект Maven2. Все работает нормально. Теперь я создал проект Хадсона, чтобы сделать ночные сборки возможными. Хадсон должен проверить текущее состояние проекта из репозитория Subversion, запустить тесты, построить проект и развернуть его в репозиторий. My Subversion repositroy содержит мой проект Maven2, но в моем локальном репозитории Maven (.m2) нет банок. Возможно, поэтому хадсон заканчивается неудачей, заявив, что некоторые сторонние банки не доступны. Здесь я должен сказать, что в моем локальном репозитории Maven (.m2) есть несколько банок, которые недоступны в каких-либо репозиториях Maven. Следовательно, нет возможности загрузить эти банки. Имеет ли Hudson возможность подключения к локальному хранилищу .m2? Или есть другой способ сделать эти файлы jar доступными для Хадсона?Hudson не может найти локальный репозиторий maven (включая сторонние банки)

Благодарим миллион за помощь.

ответ

0

есть ли другой способ сделать эти файлы jar доступными для Хадсона?

Это очень грязный но вы могли бы заменить «локальный репозиторий Хадсона» (т.е. локального хранилища пользователя, под которым работает Hudson) с «локальным репозиторием». И я действительно хочу заменить здесь, то есть удалить $HUDSON_HOME/.m2/repository и скопировать $YOUR_USER_HOME/.m2/repository (не сливать).

Но, как я уже сказал, это очень грязно, вы должны использовать корпоративный репозиторий и устанавливать артефакты, недоступные в публичных репозиториях в этом корпоративном хранилище.

2

Да, есть относительно простой/быстрый способ сделать это. Предположим, что вы используете класс драйвера Microsoft JDBC: sqljdbc4-3.0.jar Этот JAR не существует в каком-либо хранилище из-за ограничений лицензии.

Вы можете использовать сферу system в зависимости сказать Maven, чтобы получить файл из относительной папки вашего проекта:

<dependency> 
    <groupId>com.microsoft</groupId> 
    <artifactId>sqljdbc4</artifactId> 
    <version>3.0</version> 
    <scope>system</scope> 
    <systemPath>${basedir}/libs/sqljdbc4-3.0.jar</systemPath> 
</dependency> 

Пожалуйста, обратите внимание, что идентификатор_группы и артефакт просто составляют меня, они не имеют отношения к делу, но являются обязательными.

Надеюсь, это поможет.

+0

Удивительный, спасибо. Это помогло мне разобраться. –

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