The components arrangement:
Component_A - a 3rd party library/API (a set of jars) - Maven source
Component_B1 - my own created API - 1 - depending on Component_A
Component_B2 - my own created API - 2 - depending on Component_A
App_C1 - app - executable jar - depending on Component_B1 App_C2 - app - executable jar - depending on Component_B2
Deployment arrangement requirement (simplified paths for clarity):
Component_A - deploy to: ...\java\.m2\repository\lib\Component_A\*
Component_B1 - make jar with dependency on Component_A and deploy to: ...\java\.m2\repository\lib\Component_B1\*
Component_B2 - make jar with dependency on Component_A and deploy to: ...\java\.m2\repository\lib\Component_B2\*
App_C1 - make executable jar with dependency on Component_B1 and deploy to: ...\java\apps\Component_C1\*
App_C2 - make executable jar with dependency on Component_B2 and deploy to: ...\java\apps\Component_C1\*
What will be the POM.XML files look like for each of these components so we can at the end execute on command line:
java -jar App_C1.jar
and
java -jar App_C2.jar