GWT:是否可以引用包含独立于GWT的演示者的非GWT模块?
出于好奇,我正在开发一个小型的实验性平台/环境不可知的MVP框架,它应该尽可能地独立于平台。目前,它由哑模型、独立于平台的演示者(在一个抽象的主应用程序模块中定义)和依赖于平台的视图(目前有Swing、Android和终端友好环境的实验)组成。然而,我在尝试使GWT成为另一个可用的平台时遇到了麻烦,因为它需要通过GWT:是否可以引用包含独立于GWT的演示者的非GWT模块?,gwt,mvp,gwt2,platform-agnostic,Gwt,Mvp,Gwt2,Platform Agnostic,出于好奇,我正在开发一个小型的实验性平台/环境不可知的MVP框架,它应该尽可能地独立于平台。目前,它由哑模型、独立于平台的演示者(在一个抽象的主应用程序模块中定义)和依赖于平台的视图(目前有Swing、Android和终端友好环境的实验)组成。然而,我在尝试使GWT成为另一个可用的平台时遇到了麻烦,因为它需要通过.GWT.xml文件进行模块继承。有没有一种很好的方法可以以某种方式继承非GWT模块,并保持抽象的独立于平台的模块.GWT.xml-免费,但仍然可以用于GWT?如果值得的话:所有模块都是
.GWT.xml
文件进行模块继承。有没有一种很好的方法可以以某种方式继承非GWT模块,并保持抽象的独立于平台的模块.GWT.xml
-免费,但仍然可以用于GWT?如果值得的话:所有模块都是用Maven构建的,项目结构如下:
[root]
[app] --- platform-independent application
pom.xml -- references fx
[app-gwt] --- GWT-views, entry point, etc
pom.xml --- references app, fx, fx-gwt
.... App.gwt.xml --- references Fx.gwt.xml
[fx] --- the core itself
pom.xml --- references nothing
[fx-gwt] --- GWT-specific adapters for the fx module
pom.xml --- references fx
.... Fx.gwt.xml --- references GWT core
pom.xml
简单地说,我不希望app
或fx
在任何情况下都与GWT相关。另外,我认为修改
(参考另一个模块源代码)会有所帮助,但我无法让它工作(如果可能的话)。下面是一些类似的问题,不确定它们是否有帮助:
- (类似概念)
(为了简单起见,假设
app
和fx
没有外部依赖关系)我已经深入研究了这个问题,一般的解决方案是:
- 使用
插件将依赖项源代码提供给依赖项存储库。这个步骤是必须的,因为GWT编译依赖源代码而不是使用JARmaven源插件
- 使用
元素定义常规GWT模块以建立依赖关系inherit
- 使用
并将gwt-maven-plugin
configuration选项设置为匹配依赖项,编译目标应用程序compilesourceartifacts