【发布时间】:2010-10-04 08:26:30
【问题描述】:
我希望将我的 gwt 应用程序编译成一个单一的、整体的、跨浏览器兼容的 .html 文件。最终,我试图通过 gwt 设计一个亚马逊机械土耳其人模板。这些模板必须是单个 .html 文件,因为它们托管在 Amazon 的机器上。 .html 文件可以引用外部源,但只能通过绝对地址,因为我无法控制文件层次结构。
我并不担心单一文件的加载速度会比为每个浏览器拥有单独的文件慢。我正在开发一个相当简单的 Web 表单,其中只包含很少有人会看到的客户端代码。因此,速度和跨浏览器的正确性不是主要问题。
我发现通过将以下行添加到我的 MODULE_NAME.gwt.xml 中,我可以生成一个专用于单个浏览器的 JavaScript 文件(例如,如下所示的 firefox):
<set-property name="user.agent" value="gecko">
然后我将生成的代码嵌入到我的 .html 文件中,它适用于指定的单个浏览器。不幸的是,当我尝试在其他浏览器中打开 .html 文件时,gwt 生成的 javascript 不会加载。
是否有我可以添加到此文件的链接器命令来解决问题?我尝试通过以下方式调用 SingleScriptLinker:
<add-linker name="sso" />
但出现以下错误:
[ERROR] 模块必须准确 使用时一种不同的排列 单脚本链接器。
我还尝试调整生成的 javascript 文件的内容,以使它们足够兼容以嵌入到 .html 文件中,但是 gwt 生成的 javascript 太混乱了(即使在详细输出模式下)。是否有关于如何执行此操作的演练?
我在 OSX 上使用 gwt eclipse 插件。
【问题讨论】:
-
这现在应该可以工作了gwt-code-reviews.appspot.com/1678803
标签: gwt cross-browser mechanicalturk