Я пытаюсь разделить проект Maven WAR на два модуля, так что я могу создать отдельный JAR-файл с инструментами командной строки. Результат имеет следующую структуру:Многомодульный проект Maven и причал: запустите
pom.xml
(упаковкаpom
, имеет два модуля)project-jar/
pom.xml
(упаковкаjar
)
project-war/
pom.xml
(упаковкаwar
, зависит отproject-jar
)
Если я бег mvn
команд от корня, все работает отлично. Я бы хотел использовать mvn jetty:run
, но для этого мне нужно выполнить команду в подпроекте WAR. Если я это сделаю, не удается найти подпроект project-jar
, поэтому он не будет работать. Даже mvn jetty:run-war
с полностью собранным файлом WAR в каталоге target
терпит неудачу, потому что он сначала пытается «построить» проект. Мне удалось это сделать, установив project-jar
в локальный репозиторий Maven, что не очень приятно.
Есть ли способ использовать плагин Jetty в мультимодульной конфигурации Maven?
Хм, это на самом деле не поможет мне, потому что он терпит неудачу с ошибкой BUILD «Не удалось разрешить артефакт». (проект JAR-сиблинга), прежде чем плагин Jetty даже будет выполнен. Похоже, мне нужно общее решение для Maven в первую очередь. :( –
@ Lukáš Maven использует локальный репозиторий для разрешения зависимостей, поэтому ** необходимо установить ** (т. Е. Вам нужно «установить» все модули сначала, если хотя бы один раз запустите реактор, построенный на родительском элементе). работа, даже если установленные JAR «устарели». –
Ах, я надеялся избежать этого. Одна из альтернатив, которую я обнаружил, - это установить плагин для причала на родителя и указать его в правый файл войны (а затем использовать причал: запустите -war), но мне, вероятно, понадобится запустить install так или иначе, чтобы сделать NetBeans счастливым. –