2013-08-01 1 views
1

У меня было динамическое веб-приложение, созданное на eclipse. Я преобразовал его в проект maven с использованием плагина M2E. Я добавил maven war plugin в pom.xml, чтобы он мог создать войну для моего проекта, используя maven build.Включить java webapp lib в maven build

Но когда я делаю сборку, она не может скомпилировать несколько классов, которые ссылаются на банки моей папки webapp/Web-INF/lib. Эти банки не могут включать в себя зависимость в pom.xml.

Как я могу сказать maven включить банки Web-INF/lib при создании классов и создании войны?

+1

Как эти банки присутствуют в WEB-INF/lib ?? Под моим пониманием после выполнения maven-war-plugin он помещает все банки в папку WeB-INF/lib, поэтому как он может содержать баночки перед началом сборки. И можете ли вы указать ошибку, которую вы получаете при выполнении maven-wasr-plugin? - Спасибо – saurav

+0

На самом деле я поставил эту банку в папку WEB-INF/lib. В основном я хочу включить банку для сборки, которая недоступна в репозитории maven. Я могу сохранить его в другой папке и включить его, если необходимо, вместо папки WEB-INF/lib. Я получаю ошибку компиляции в одном из классов как maven build, не включая мою банку. – Neeraj

+1

См. Мой ответ ниже. Спасибо – saurav

ответ

1

Неправильный способ сделать это, вы не должны помещать любую банку вручную в папку WEB-INF/lib.

И если эта банда недоступна в MAVEN CENTRAL REPO, вы можете ее загрузить и установить в своем NEXUS CENTRAL REPO (если есть), в противном случае поставить эту банку в свой локальный репозиторий maven и добавить ее в качестве зависимости в вашем файле pom. Если вы не хотите включать эту банку в свой WEB-INF/lib, то измените область действия, предоставленную в противном случае, оставьте ее как по умолчанию, я компилирую.

Во время сборки MAVEN сначала будет искать эту конкретную банку в вашем местном репо, и если она ее не найдет, она попытается загрузить из Centra Repo.

Как только он будет доступен в вашем местном репо, ваша сборка не сломается.

+0

Спасибо, ваш ответ действительно помог. Нам нужно создать локальный репозиторий для этой банки. Но что, если я должен дать кому-то этот webapp. Как он получит эту зависимость? Поскольку эта зависимость локальна. Есть ли сайты, которые позволяют загружать ваши зависимости? – Neeraj

+0

Что на самом деле означает «если я должен дать этому webapp кому-то?». Вы говорите о предоставлении военного файла? - Спасибо – saurav

+0

Упс - да, я имею в виду то же самое :). Или предоставить это приложение другому разработчику для разработки. – Neeraj

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

  • Нет связанных вопросов^_^