Próbuję podzielić projekt Maven WAR na dwa moduły, dzięki czemu mogę zbudować oddzielny plik JAR z narzędziami wiersza poleceń. W rezultacie ma następującą strukturę:Wielomodułowy projekt Maven i pomost: uruchom
pom.xml
(opakowaniepom
posiada dwa moduły)project-jar/
pom.xml
(opakowaniejar
)
project-war/
pom.xml
(opakowaniewar
zależyproject-jar
)
Jeśli biegnę mvn
polecenia z cebulkami, wszystko działa bez zarzutu. Chciałbym nadal używać mvn jetty:run
, ale do tego potrzebuję wykonać polecenie w podprojekcie WAR. Jeśli to zrobię, nie uda się znaleźć podprojektu project-jar
, więc nie będzie działać. Nawet mvn jetty:run-war
z całkowicie zmontowanym plikiem WAR w katalogu target
kończy się niepowodzeniem, ponieważ najpierw próbuje "zbudować" projekt. Udało mi się to tylko dzięki zainstalowaniu project-jar
w lokalnym repozytorium Maven, co nie jest zbyt miłe.
Czy istnieje sposób na wykorzystanie wtyczki Jetty w wielomodułowej konfiguracji Maven?
Hm, to faktycznie nie może mi pomóc, ponieważ nie powiedzie się z błędem BUILD "Nie udało się rozwiązać artefaktu." (projekt JAR dla rodzeństwa) zanim wtyczka Jetty zostanie nawet wykonana. Wydaje mi się więc, że najpierw potrzebuję ogólnego rozwiązania dla Mavena. :( –
@ Lukáš Maven używa lokalnego repozytorium do rozwiązywania zależności, więc ** muszą ** być zainstalowane (tzn. Musisz najpierw zainstalować wszystkie moduły, uruchamiając co najmniej jeden proces budowy reaktora na obiekcie nadrzędnym). działa, nawet jeśli zainstalowane JAR-y są "nieaktualne" –
Ach, miałem nadzieję tego uniknąć.Jedną alternatywą okazało się ustawienie wtyczki do mola na rodzica i wskazanie jej na prawidłowy plik wojenny (a następnie skorzystanie z przystani: uruchom -war), ale prawdopodobnie i tak będę musiał uruchomić instalację, aby uczynić NetBeans szczęśliwymi –