2011-02-04 141 views
8

假设我想创建一些可以跨多个GWT模块共享的库代码。构建库代码的最佳方法

什么是重用这个库的典型方法。我应该为库创建一个模块,然后将其导入到我的.gwt.xml文件中?有什么方法可以将它作为jar发布吗?

+4

为什么这个问题关闭? – 2013-02-11 17:43:41

回答

5

这样做你会做任何模块。它不一定是一个Web应用程序,不需要额外的配置文件。只是源码打包成jar文件。唯一真正的要求是:

  1. 跟踪模块创建准则:
    1. 准备在你的模块的根目录,一个*.gwt.xml描述符文件。
    2. 对于需要编译为js的类和server的其他类有client包。
  2. 确保在jar文件中包含源代码。

有趣的是,如果你的模块不依赖于任何GWT-特定的类或使用JSNI,你可以用“正常”的Java应用程序使用它。

第二个问题(如何重用它)的答案很简单:将新创建的jar添加到您的类路径中,并在您的Web应用程序的模块描述符中继承此模块。

是的,一旦你在一个罐子里有它,你可以释放它;-)

这种方法的最好的例子就是分机GWT(又名GXT):http://www.sencha.com/products/extgwt/只要下载这个库,解压缩,看看setup.txt有关安装说明以及gxt.jar(可重复使用的模块)是如何完成的。

0

我认为最简单的方法是创建一个新项目(Web应用程序),并将其导出为JAR。这样你就可以将你的图书馆放在任何其他项目之外。

将库导出为JAR时,请不要忘记包含源。

然后您库添加到你到另一个项目:

  1. 的JAR添加到构建路径。
  2. 包括在你的模块描述符依赖于你的库(com.mycompany.myproject.Myproject.gwt.xml)

<inherits name='com.mylibrary.mylib.Mylib'/>

另一种东西,你可以在你的lib做的是包括服务器创建主题(包括CSS,图像等)等。

这是非常有用的。

希望这会有所帮助。

0

看起来现在有一个Google的Eclipse GWT Module Wizard来完成这个任务! http://code.google.com/webtoolkit/tools/gwtdesigner/wizards/gwt/module.html

通常你会创建一个模块,然后在你的实现模块中继承它。如果你喜欢,你可以在各种模块中实现它。

+0

您指定的链接似乎与该问题无关。请详细说明。 – 2012-10-19 19:13:15