Sto provando a dividere un progetto Maven WAR in due moduli, in modo da poter creare un file JAR separato con strumenti da riga di comando. Il risultato ha la seguente struttura:Progetto Maven multi-modulo e jetty: eseguire
pom.xml
(imballaggiopom
, ha due moduli)project-jar/
pom.xml
(imballaggiojar
)
project-war/
pom.xml
(imballaggiowar
, dipendeproject-jar
)
Se corro mvn
comandi dalla radice, tutto funziona bene. Mi piacerebbe continuare a utilizzare mvn jetty:run
, ma per quello ho bisogno di eseguire il comando nel sottoprogetto WAR. Se lo faccio, non riesce a trovare il sottoprogetto project-jar
, quindi non verrà eseguito. Anche mvn jetty:run-war
con un file WAR completamente assemblato nella directory target
non riesce, perché tenta innanzitutto di "creare" il progetto. Sono riuscito a farlo funzionare installando project-jar
nel repository Maven locale, che non è molto bello.
C'è un modo per utilizzare il plugin Jetty in una configurazione Maven multi-modulo?
Hm, questo in realtà non mi aiuta, perché non riesce con un errore BUILD "Impossibile risolvere artefatto." (il progetto JAR di pari livello) prima che il plugin Jetty venga eseguito. Quindi sembra che ho bisogno di una soluzione generale per Maven in primo luogo. :( –
@ Lukáš Maven usa il repository locale per risolvere le dipendenze in modo che ** debbano ** essere installati (cioè è necessario "installare" tutti i moduli prima eseguendo una build del reattore sul genitore almeno una volta). lavoro, anche se i JAR installati sono "obsoleti" –
Ah, speravo di evitarlo.Una alternativa che ho scoperto è stata l'impostazione del plugin jetty sul genitore e l'indirizzamento al file war corretto (e quindi usare il jetty: run -war), ma probabilmente dovrò eseguire l'installazione in ogni caso per rendere felice NetBeans. –