Лучше всего использовать тег зависимостей в родительском pom для определения ваших зависимостей и их версий, а затем ссылаться на эти зависимости в ваших подмодулях, где это необходимо. Когда вам требуются другие подмодули в вашем проекте (т.е. ваш общий подмодуль из другого подмодуля), тогда зависимости будут найдены транзитивно. Например:
В вашем родительском пом:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
В вашей общей поме (обратите внимание, что нет версии или области):
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
И тогда вы можете просто сослаться на ваш общий подмодуль из других подмодулей, если вы уже.