Я решаю эту проблему с помощью Maven.Общий код упакован как отдельный проект maven, а затем используется в качестве библиотеки.Вот фрагменты из файла pom.xml:
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>2.0.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<version>2.0.4</version>
<scope>provided</scope>
</dependency>
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/client/**/*.java</include>
<include>**/client/**/*.properties</include>
<include>**/shared/**/*.java</include>
<include>**/shared/**/*.properties</include>
<include>**/*.gwt.xml</include>
</includes>
</resource>
</resource>
</build>
Приведенная выше конфигурация сборки копирует дополнительные исходные файлы, необходимые для компилятора GWT, в конечный файл.
В случае использования eclipse в качестве IDE, *Плагин 1006 * m2eclipse может использоваться для автоматической обработки всех зависимостей.Можно открыть все проекты в едином рабочем пространстве, и общий путь к классу будет общим.Единственным недостатком является требование время от времени вызывать project > clean
(заставит встроенный maven скопировать все ресурсы, указанные во фрагменте выше).