java - 将 GWT 库编译为 JavaScript 库

标签 java gwt javascript

我想知道将 GWT 库构建到 JavaScript 库中的最佳方法是什么。当这个要编译成Java脚本的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) 文件中吗?

最佳答案

[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

如果您想尝试新的东西,您可以阅读 GWT-2.7 中的 JsInterop 测试功能,该功能将在 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

关于java - 将 GWT 库编译为 JavaScript 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27726805/

相关文章:

css - 动态设置 background-image-url

java - GWT-Textcell 未触发 onclick 事件

java - Sencha GXT 网格过滤器速度很慢。我能让它们快点吗?

javascript - 如何从 $ ('p' 的集合中删除所有类?

javascript - 如何从另一个页面链接到特定的 javascript 选项卡?

javascript - 如何让函数改变 JavaScript 中放入其中的变量?

java - Java模糊日期解析

java - 上传大文件时暂停/恢复 Httpurl 连接 - Android

java - 检查RadioButton是否未被选中

java - Android ImageView 的过渡效果