GWT单位:构造的单位(GWT模块)
独立的GWT构造单位称为:modules。一个Module包括了一个GWT工程所有的构造设置:
1.继承的module。
2.一个入口点应用的类名;这些是可选的,尽管在HTML中任何module所指向的都必须指明至少有一个入口点类。
3.source路径入口
4.public路径入口
5.延迟绑定规则,包括属性提供器和类发生器。
Modules用XML来定义,放在工程结构的目录下。虽然他被推荐出现在工程目录的根目录下,但是他可以出现在工程的任何包中。
入口点类(Entry-Point Classes):
一个module入口点可以是任何Entry-Point可指定的类,它能够不用参数构造。当一个module被加载,每一个入口点类被实例化,他的EntryPoint.onModuleLoad()函数被调用。
源路径(Source Path):
子包中含有可翻译的source的Modules能够被识别,因为命名过的包和它的子包将被加到source path中。非冲突地混合client-site和server-site的代码到一起,只有在source path中找到的文件能够成为翻译成JavaScript的候选。当modul集成另外的modules,他们的source就连接,这样每个module将在需要的情况下访问课翻译的source。缺省情况下,source path就在client子包下面,在Module XML文件存放的地方。
公共路径(Public Path):
子包是public的Modules能够被识别,因为被命名的包和他的子包将被加入到public path中。public path在工程下面GWTmodule所指向的静态资源,诸如CSS或者images这些被保存的。当你编译你的应用为JavaScript是,所有这些在public path中能中能找到的文件将被拷贝到module的输出文件夹。1.当从client代码中引用的公共资源(例如设置一个图片部件的URL),应该这样构造URL(GWT.getModuleBaseURL() + "resourceName.png")。2.当从Module XML文件中引用公共资源,就是用在公共文件夹的相对路径,module的基本URL将被自动地处理。3.当一个module集成其他的modules,他们的public path将被连接到一起,这样每个module将访问到它想访问的静态资源。缺省情况下,public path就在client子包下面,在Module XML文件存放的地方。
原文:http://code.google.com/intl/zh-CN/webtoolkit/doc/1.6/DevGuideOrganizingProjects.html#DevGuideModules