我正在努力使我的GWT应用程序的结构正确.(我是唯一一个发现GWT代码很容易变得非常混乱和难以理解的人吗?)
该应用程序应该是几个截然不同的区域的接口 - 让我们说区域A和B.目前我正在尝试将它作为一个带有两个标签的界面实现 - 一个带你到A区,一个带你去区域B.我不知道如何通过这种方式将两个不同区域所需的代码分离得很好 - 应用MVP模式(我实际上并不清楚如何做到这一点我的选项卡之类的分层接口)我最终将区域A和区域B代码放在例如client.view和client.presenter包中:
src
- main
- java
- client
+ event
- presenter
+ a_stuff
+ b_stuff
- view
+ a_stuff
+ b_stuff
:
我还没有找到任何关于如何以及何时使用多个模块的好例子,我想知道我的案例是否可能是多个模块有意义的案例?在这种情况下,代码将如何构建?
也许有必要提一下,我正在使用最新的GWT,Maven和IntelliJ IDEA.
非常感谢提示,非常感谢Stine :)
Ada*_*lis 10
这是一个更全面的示例,帮助我获得两个模块:http: //ashtoncthomas.blogspot.com/2011/02/multiple-modules-in-google-web-toolkit.html
它使用的结构:
src
- main
- java
a_stuff.gwt.xml
b_stuff.gwt.xml
- client
- shared_stuff
- a_stuff
- presenter
- view
- b_stuff
- presenter
- view
Run Code Online (Sandbox Code Playgroud)
如果你想要两个HTML页面 - 每个模块一个(就像我一样),那么你需要创建两个页面:
war
page_a.html
page_b.html
Run Code Online (Sandbox Code Playgroud)
并在两个.gwt.xml文件中定义您的入口点,例如(对于a_stuff.gwt.xml):
<module rename-to='module_a'>
... your stuff here ...
<entry-point class="main.java.client.a_stuff.A_entry_point"></entry-point>
</module>
Run Code Online (Sandbox Code Playgroud)
其中A_entry_point是一个实现的类EntryPoint.
然后,在HTML页面中,仅包含所需的模块(例如,在page_a.html中):
<script type="text/javascript" language="javascript"
src="module_a/module_a.nocache.js"></script>
Run Code Online (Sandbox Code Playgroud)
此外,如果您正在使用Eclipse,那么当您单击"GWT Compile Project"时,它将要求您"添加入口点类",因此您必须单击"入口点模块"中的"添加"按钮GWT Compile窗口的一部分,并添加两个入口点模块(a_stuff.gwt.xml和b_stuff.gwt.xml).您可以根据需要从此处添加/删除入口点模块,以选择要编译的模块.
以上对我有用.我用它来制作我网站的两个不同版本,每个版本都在一个单独的模块中.
我建议这样的事情:
src
- main
- java
+ a_stuff
-client
- presenter
- view
- event
+ b_stuff
-client
- presenter
- view
- event
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11644 次 |
| 最近记录: |