我希望有多个共享通用代码的 GWT 项目。这可能吗? AFAICT 我的 GWT 项目需要每个都有自己的目录,源代码直接在下面,这似乎排除了代码共享。我尝试使用链接文件夹,但 GWT 似乎不喜欢那样(描述here https://stackoverflow.com/questions/3538901/how-to-make-gwt-find-source-in-linked-folders).
如果我想这样做,我唯一的选择是将要共享的代码转换为 .jar 文件,然后在每个项目的 XML 文件中继承该文件吗?有没有办法让 Eclipse 自动执行此打包,或者我需要某种“change-shared-code/compile-jar/use-in-other-project”循环?
还有其他解决方案吗?
我在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 编译器所需的附加源文件复制到最终的 jar 中。
如果使用 eclipse 作为 IDE,m2eclipse http://m2eclipse.sonatype.org/插件可用于自动处理所有依赖项。可以在单个工作区中打开所有项目,并且公共项目的类路径将被共享。唯一的缺点是需要调用project > clean
有时(将强制嵌入式 Maven 复制上面代码片段中指定的所有资源)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)