0

I am wanting to mavenize our projects but have a somewhat complex scenario. Need opinions on the best way to handle a situation in which classes from a web app are required by other apps that are built and deployed along side it.

My projects look like this:

  • Suite web app.
  • POS web app.
  • Membership app.

Two packages within the Suite app are used in the POS and Membership app, as well as in the server lib.

I am not really sure how to approach this. Should we designate/automate a regular build of the Suite app for the purpose of pushing the Suite jars to the repo to be used as a dependency, or should this all be taken care of in the top level pom for each build? There's also the issue of building the server lib.

Thoughts appreciated!

Half_Duplex
  • 5,102
  • 5
  • 42
  • 58

1 Answers1

0

If there are interdependencies between your projects you either let your CI server take care of the logic (e.g. build your dependencies before your dependents, or if a dependency changes, rebuild the dependents) or you let maven do it using the reactor and using a multi module project. In there, POS and membership would have a maven dependency towards Suite (if i understand correctly your setup)

If you go with the latter, you need to have an aggregator pom that aggregates the three projects as <modules>s. This will be the pom where you will launch maven, so the reactor can do its job of determining the order

Hilikus
  • 9,954
  • 14
  • 65
  • 118