Структура, которую вы набросали, дает мне другое представление о структуре вашего проекта. Позвольте мне описать это немного. Если бы я увидел структуру, подобную следующей, я бы предположил:
project-root.pom
|- generic jar dependency 1 (parent: project-root.pom)
|- generic jar dependency 2 (parent: project-root.pom)
|- modules
+-- module-pom
| - jar 1 (uses generic dependencies, and a couple of others) (parent:module-pom)
| - jar 2 (uses generic dependencies, and a couple of others)(parent:module-pom)
| - war project (uses generic jars, and jar 1 and 2) (parent:module-pom)
| - ear project (parent:module-pom)
Но вы описали в тексте взаимосвязь модуля другим способом:
root
|- generic jar dependency 1
|- generic jar dependency 2
|- jar 1 (uses generic dependencies, and a couple of others)
|- jar 2 (uses generic dependencies, and a couple of others)
|- ear project
|- war project (uses generic jars, and jar 1 and 2)
С помощью приведенной выше структуры вы можете просто определить зависимости в войне, как в зависимости от jar-1, jar-2. Ухо зависит только от войны. Jar-1 может зависеть от зависимости generic-jar 1 и так далее. Уровни дают наблюдателю иное представление о проекте, чем оно есть на самом деле. Таким образом, ваша структура должна представлять вашу структуру зависимости. Я не уверен, правильная ли это структура для вашего проекта, но представляю структуру (структуру папок) в соответствии с вашими зависимостями.