Multi-webapp Maven 2 projet - comment construire un webapp?
-
08-10-2019 - |
Question
J'ai la mise en page de source suivante:
.
├── pom.xml
├── modules (has pom)
│ ├── module1 (has pom)
│ └── module2 (has pom)
│ └── moduleN (has pom)
└── webapp1 (has pom)
└── webapp2 (has pom)
webapp1 et webapp2 dépend de l'ensemble des modules (modules étant DAO, services, etc.).
À l'heure actuelle, je tout construire à partir de la racine et mvn package
me donne deux fichiers WAR.
Comment puis-je construire seulement webapp1 ou webapp2?
Si je cd
en webapp1 et exécuter mvn package
il dit qu'il ne peut pas télécharger moduleX.jar (ce qui est un référentiel propre). Certes, Maven devrait être en mesure d'en déduire que ces modules doivent être construits d'abord comme dépendances?
La solution
Comment puis-je construire seulement webapp1 ou webapp2?
Utilisez "Options avancées de réacteurs « . De la racine:
mvn install -pl webapp1 -am
Maven à installer webapp1
et les projets sur lesquels dépend webapp1
(dans le bon ordre).
Les documents d'aide (de mvn -h
), ces commandes comme ceci:
-pl, --projects Build specified reactor projects instead of all projects -am, --also-make If project list is specified, also build projects required by the list
Notez que vous devez appeler Je me suis trompé, appelant install
, les dépendances sont toujours résolus par le dépôt local (vous devez les install
). package
ne le travail (je ne sais pas comment / pourquoi, mais il le fait).