我一直在努力尝试将 RemoteService 实现从一个 GWT 项目重用到一个新项目中。这是大图:
我有一个正在工作的 smartgwt-mobile 项目,我们现在决定我们想要一个相同项目的桌面版本,使用常规的 smart-gwt。这个新应用程序的 GUI 显然会有所不同,但服务器端代码将完全相同。
我试图通过链接新源结构中另一个项目中的包文件夹(我正在使用带有 GWT 插件的 Eclipse)或添加借用的代码路径来“借用” RemoteService 接口、它的异步对应物和整个服务器包作为构建路径的过滤源文件夹,虽然这满足 Eclipse 依赖项检查器,但 GWT 编译器无法找到借用的代码,这表明我需要在模块 .gwt.xml 文件中添加“继承”声明。
当我这样做并重新编译它时,现在需要在借用代码的根目录中添加第二个模块 .gwt.xml 文件,这是不可接受的,因为它会影响其他项目。
我一直在阅读 GWT 模块文档,但我看不到如何实现这样的方案。实际上可能无法做到我想要实现的目标。
如果这能解决问题,我愿意创建第三个项目,该项目仅定义一个 GWT RemoteService 模块,然后移动和桌面 smartgwt 项目都将继承该模块。
有人对如何解决这个问题有建议吗?