Вам нужно будет сделать несколько творческих "Maven-ing", как я только что придумал термин, чтобы описать это. (На самом деле это, вероятно, вообще не творческий подход, но я сам немного новичок в Maven, так что это меня тоже немного озадачило).
В некотором смысле вы правы, GWT-компилятор ищет унаследованный модуль source в пути к классам, когда он пытается скомпилировать ваш "основной" модуль. Чтобы достичь этого, вам нужно будет добавить зависимость к pom основного модуля от источников библиотечного модуля (строго для фазы компиляции).
Примерно так:
...
<artifactId>main-module</artifactId>
...
<dependency>
<groupId>library-group</groupId>
<artifactId>library-artifact</artifactId>
<type>jar</type>
<version>0.1-SNAPSHOT</version>
<classifier>sources</classifier>
<scope>compile</scope>
</dependency>
...
Теперь, откуда вы берете эти источники, могут отличаться. Если вы просто пытаетесь сделать это из IDE, например Eclipse, этого, вероятно, достаточно, потому что плагин m2eclipse достаточно умен, чтобы знать, где взять эти источники (если библиотечный модуль также находится в вашем рабочем пространстве). Если это ваш фактический процесс сборки, то вам нужно будет изменить pom библиотечного модуля для создания артефакта -sources вместе со стандартным «библиотечным артефактом». Таким образом, вы получите в итоге оба:
library-artifact-0.1-SNAPSHOT.jar
и
library-artifact-0.1-SNAPSHOT-sources.jar
Надеюсь, более понятно, как плагин gwt-maven поступает с этого момента.
Почти забыл, еще один вопрос, на который я здесь ответил, также может быть полезным: Структура проекта GWT .