将GIT库编译为Javascript库

时间:2014-12-31 22:16:27

标签: java gwt javascript

我想知道将GWT库构建到Javascript库中的最佳方法是什么。当这个要编译成Javascript的GWT库中没有任何GWT服务器端组件时。

简单的前端组件。包括像ajax调用等等。

在Java中,GWT库的使用方式如下:

TheGWTLibrary api = new TheGWTLibrary();
api.setServer("http://www.somewhere/api");
api.post(stuff, new Callback(){
 void success(){
 }
 void fail(){
 }
});
api.get(new Callback(){
 void success(){
 }
 void fail(){
 }
});

这样GWT库项目可以在任何HTML项目中使用,而不会成为GWT应用程序。

问题是,

  • 如果可能,这个GWT库的依赖项将在哪里 被编译成?它会被包含在单个Javascript(js)中 文件?

2 个答案:

答案 0 :(得分:2)

[编辑2016]

使用新版GWT(2.8.0)的方法是使用JsInterop,阅读documentation API。请注意,它仍然在2.8.0-SNAPSHOT中,但将在几周内发布。此外,2.7.0中的JsInterop已被弃用并在2.8中删除,因此请勿使用它。

[结束编辑]

除了编写JSI方法外,有两种简单的方法可以解决这个问题。

1.- GwtExporter

您可能有兴趣阅读我几年前写的这篇文章:

https://code.google.com/p/gwtchismes/wiki/Tutorial_ExportingGwtLibrariesToJavascript_en

它使用gwt-exporter,你可以使用这种方法看看几个项目:

2.- JsInterop

如果你想玩新东西,你可能会读到JsInterop在GWT-2.7中的beta功能,它将在GWT-3.0中完全发挥作用。

它允许您将java类导出到JS。您必须使用-XjsInteropMode JS和一些注释。

目前没有那么多文档,但是有一个文档解释了API,以及一个有趣的演示文稿。

https://docs.google.com/document/d/1tir74SB-ZWrs-gQ8w-lOEV3oMY6u6lF2MmNivDEihZ4/edit

http://gokdogan.appspot.com/gwtcreate2013/#1

答案 1 :(得分:1)

听起来你正在寻找像GWT Exporter这样的东西。它允许您将GWT库导出为可公开访问的JavaScript API。

看起来您仍然需要将GWT库编译为Web应用程序才能使用它,但如果您没有任何服务器端代码,它应该像编译API一样简单,复制战争文件夹并添加对war / [yourapp] .nocache.js。

的引用

如果这不是您要找的内容,您可以查看this question以了解其他选项。