.gwt.xml 配置说明

如何定义个XML模块文件css

模块是被定义于名为 gwt.xml.ModulName 的文件中。这个文件应改被放在你的工程的根目录。若是你的工程使用的GWT标准工程文件夹的结构,那么你的配置文件应该向下面那样简单。java

<module>web

    <inherits name="com.google.gwt.user.User" />api

    <entry-point class="com.example.cal.client.CalendarApp" />服务器

</module>工具

加载模块测试


模块配置的XML文件应该在JAVA的类加载路径里面。模块老是经过他们的逻辑名被引用。模网站

块的逻辑名是这样的:包名1.包名2.模块名。逻辑名并不用反映实际的文件系统路径和文件扩展名。以下,假如一个模块的XML文件:google

~/src/com/example/cal/Calendar.gwt.xmlurl

那么对应的逻辑名能够是:

com.example.cal.Calendar

重命名模块


模块配置文件的<module>元素有一个可选的属性 rename-to 。这个属性可让JAVA -> JavaScript的编译器把对应模组按照重命名以后的名字来处理。重命名一个模块能够带来以下好处:

  • 能够使用一个不反应实际包结构的短名

  • to create a "working module" to speed up development time by restricting the number of permutations (这个不知道该怎么译, 因此把原文放在这里。permutations 是排列组合的意思。


com.foo.WorkingModule.gwt.xml:

<module rename-to="com.foo.MyModule">

<inherits name="com.foo.MyModule" />

<set-property name="user.agent" value="ie6" />

<set-property name="locale" value="default" />

</module>


对应如上的配置文件,当WorkingModule.gwt.xml被编译的时候,默认状况下将仅仅产生一个用于ie6的版本。这种方式能够帮助你提升开发时的编译速度。这时编译器的输出将是以重名后的包名产生的。

可是,在主机(Host)模式下,须要使用实际的XML文件名对应的模块名,即物理名。总之

主机模式下,GWT(谷歌网站工具)只会按照物理名去查找对应的模块。

使用多个模块


大多数状况下,你可能会打算建立一个能够在其余GWT工程中重用的模块。建立这类模块的时候并不意味着该模块必需要定义一个入口(entryPoint)。实际上, GALGWT(Google API Library for Google Web Toolkit )中Gears对GWT的绑定中就有这种状况。你能够在jar包中的gwt-google-apis/com/google/gwt/gears/ Gears.gwt.xml 中看到,那里并无定义入口。因此任何想要在GWT工程中使用Gears for GWT的模块都须要在其模块配置文件中继承Gears.gwt.xml module。例如: 一个名为 Foo 的模块项使用GALGWT, 则其模块配置文件中应该有一个<inherits> 元素。

<module>
...
              <inherits name="com.google.gwt.gears.Gears" />
     





到输出目录。
  XML配置文件参考
这一节列出了模块配置文件中最经常使用的元素。

<inherits name="logical-module-name" /> : 
        从指定的模块继承全部的设置。这样作时间上是将全部的设置都复制的当前的这个文件。能够继承的模块数量不限。

<entry-point /> :
        定义一个入口类。能够定义任意数量的入口,固然被继承过来的入口一样有效。同一个有效域内的全部的入口都被
编译到同一个代码库。而且,被按照出如今配置文件中的顺序依次的被各自的onModuleLoad()方法加载。

<source path="path" /> : 
         每一个<source>标签都经过合并其所指定的路径到模块配置XML文件所指定的包中去的方法, 加入了一个包到编译
器的源码路径内。全部出如今包中的java文件或者其子包都会被编译。一样,基于模式匹配的过滤也是支持的,以便于为你
提供对编译输出,主要是对那些资源将被复制编译输出目录,提供细粒度的控制。若是整个模块配置文件都没有<source>标
签被定义,那么client包将被隐式的加入到源码路径中去,这个动做等同于<source path = "client">.这个默认设置能够
帮助你们使用google推荐的标准工程文件夹的组织方式。

<public path = "path" /> 
          这个标签用于将一个包加入到public path 路径下面。全部出现于public path路径下面的资源将被全部的客户
端代码访问。和source同样, <public> 也有一个默认的指向,模块根目录,就是模块配置文件所在的目录,下的public 
文件夹。

<servlet path="url-path" /> :
          为了便于RPC测试,这个标签订义了一个servlet并将之绑定到一个URL,可是请注意,和在web.xml中定义不一样,
 1。此处要求URL的末尾必须是一个目录而不是”/”。在客户端代码中, 你能够指定一个调用位置,
用ServiceDefTarget.setServiceEntryPoint(String).这里对加载的servlet的数量没有限制。2。这个地方的定义
只对GWT的内置服务器的服务器端的调试起做用。

<script src ="js-url" /> : 
          在中用模块的主页中引入js文件或者文件夹,这个效果等同于你在HTML 页面中使用 script 。

<stylesheet src="css-url" /> :
          在中用模块的主页中引入css文件或者文件夹,这个效果等同于你在HTML 页面中使用 script 。

<extend-property name="client-property-name" values="comma-separated-values" /> :
          这个使用来定义本地化参数的,也能够用来定义其余的一些属性,具体的就只有你去查一下了。
相关文章
相关标签/搜索