构建图书馆代码的最佳途径

时间:2011-02-04 18:48:34

标签: gwt

假设我想创建一些可以在多个GWT模块之间共享的库代码。

重用此库的典型方法是什么?我应该为库创建一个模块,然后将其导入我的.gwt.xml文件中吗?有没有办法把它作为罐子发布?

4 个答案:

答案 0 :(得分:5)

您需要创建GWT模块:

请参阅本教程:GWT Tutorial – Using and creating modules

答案 1 :(得分:5)

按照你做任何模块的方式做。它不必是Web应用程序,也不需要其他配置文件。只是源包装到jar文件中。唯一真正的要求是:

  1. 遵循模块创建指南:
    1. 在模块的根目录中准备一个*.gwt.xml描述符文件。
    2. 有一个client包用于打算编译为js和server的其他类。
  2. 请务必在jar文件中包含来源。
  3. 有趣的是,如果您的模块不依赖于任何特定于GWT的类或使用jsni,您也可以将它与“普通”Java应用程序一起使用。

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

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

    此类方法的完美示例是Ext GWT(又名GXT):http://www.sencha.com/products/extgwt/只需下载此库,解压缩并查看setup.txt以获取安装说明以及gxt.jar(可重用模块)完成。

答案 2 :(得分:0)

我认为最简单的方法是创建一个新项目(Web应用程序)并将其导出为JAR。通过这种方式,您可以在任何其他项目之外使用您的库。

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

然后将库添加到您必须的另一个项目:

  1. 将JAR添加到构建路径。
  2. 在模块描述符中包含对库的依赖关系(com.mycompany.myproject.Myproject.gwt.xml)
  3. <inherits name='com.mylibrary.mylib.Mylib'/>

    你可以在你的lib中做的另一件事是包括服务器端代码,创建主题(包括css,图像等)等。

    这非常有用。

    希望这有帮助。

答案 3 :(得分:0)

现在看来,谷歌现在有一个Eclipse GWT模块向导来完成这项任务! http://code.google.com/webtoolkit/tools/gwtdesigner/wizards/gwt/module.html

通常,您创建一个模块,然后在实现模块中继承它。如果您愿意,可以在各种模块中实现它。