在客户端使用GWT中另一个Maven模块的java对象

Tek*_*mmy 2 gwt client module serializable maven

我有两个maven项目,项目A内容一些可序列化的模型对象,项目B是GWT项目.现在我想使用项目A中的一些对象来进行项目B中客户端和服务器之间的RPC调用.

所以这就是我所做的:

GWT项目B xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.4.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.4.0/distro-source/core/src/gwt-module.dtd">
<module rename-to='Index'>
<inherits name='com.google.gwt.user.User' />
<inherits name='com.projectA.Models' />

<inherits name='com.google.gwt.user.theme.standard.Standard' />
<entry-point class='com.projectB.client.Index' />

<source path='client' />
<source path='shared' />

</module>
Run Code Online (Sandbox Code Playgroud)

Java对象项目A xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.4.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.4.0/distro-source/core/src/gwt-module.dtd">
<module>
<inherits name="com.google.gwt.user.User"/>
<source path="./" />
</module>
Run Code Online (Sandbox Code Playgroud)

我仍然得到"没有源代码可用于类型com.projectA.Object;你忘了继承一个必需的模块吗?" 消息=(

(POM依赖设置!)

Tek*_*mmy 7

我想我需要将它添加到项目B的POM中的maven gwt插件配置中:

<configuration>
   <compileSourcesArtifacts>
        <compileSourcesArtifact>com.projectA:Models</compileSourcesArtifact>
   </compileSourcesArtifacts>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这告诉Maven GWT插件将源代码复制到web目录...此外,您需要在项目B包中使用以下内容的GWT xml文件:

<module>
   <inherits name='com.google.gwt.user.User' />
   <source path='' />
</module>
Run Code Online (Sandbox Code Playgroud)

这告诉GWT编译器包含该模块的源代码.

DONE