Включить библиотеку Eclipse в сборку Maven

Простой сценарий:

У меня есть проект maven, содержащий некоторые зависимости maven (activiti Framework), и я добавил среду выполнения Widlfly 8.1.0 в качестве библиотеки в eclipse.

Естественно, теперь, если я уберу и соберу с MAVEN, maven не будет учитывать время выполнения при компиляции и будет жаловаться, что он не может найти, например. аннотация @Webservlet, классы HttpRequest и т. д.

поэтому, чтобы построить мой проект, мне нужно выполнить любую цель maven и увидеть, что она не выполняется, просто чтобы maven загрузил все зависимости, а затем собрал проект с помощью процесса сборки eclipses, который затем использует все загруженные зависимости maven и wildfly 8.1.0 время выполнения, преуспевающее в построении проекта.

ТОЛЬКО тогда я могу запустить maven install/deploy для создания.war, который работает, потому что maven находит скомпилированную целевую папку, созданную eclipse.

Как я могу, не устанавливая все jar-файлы времени выполнения в мой локальный репозиторий или добавляя установку wildfly в качестве другого локального репозитория, сказать maven или плагину m2e для включения вручную добавленных библиотек в шаг компиляции mavens?

1 ответ

Решение

То, что вы, вероятно, хотите, это "обеспеченный"*- зависимость объема от org.wildfly:wildfly-spec-api:8.1.0 (это артефакт pom, содержащий все apis/ спецификации, предоставленные вам wildfly).

предполагая, что вы намереваетесь развернуть свое приложение внутри wildfly (в отличие от встраивания wildfly в ваш собственный метод main()...), вам не нужна зависимость от контейнера wildfly.

* - обратите внимание, что поскольку wildfly-apec-api является артефактом pom (а не jar-файлом), вам необходимо использовать область импорта и не указывать ее. см. эту статью для полного руководства. Суть в том, что вы помещаете зависимость области импорта от pom в управление зависимостями, а затем вы можете поместить зависимость предоставленной области в любой конкретный элемент API / спецификации, который вы используете (например, ejb3, jsf, валидация bean или jpa) и версии. будет взято из spec-api pom.

Другие вопросы по тегам