gpt4 book ai didi

gwt - GWT代码如何在开发代码中运行

转载 作者:行者123 更新时间:2023-12-04 15:50:32 28 4
gpt4 key购买 nike

在 GWT 网络/生产模式下,Java 代码被编译成在浏览器中呈现的 Javascript 代码。

另外,我一直认为在GWT开发模式下,GWT developer plugin将我的Java代码编译成JavaScript在浏览器中呈现。但是在一些网站上阅读之后,我开始知道没有将代码编译为 JavaScript 以在开发模式下在浏览器中查看它。

所以,我想知道:如果这些小部件不是 JavaScript 代码,那么在此模式下我在浏览器中看到的所有这些小部件是什么?我不明白。

请帮助理解这一点。

最佳答案

开发模式的症结在于您的代码在 Java 中运行。如果您可以使用标准的 Java 调试器,这是先决条件。您将在 GWT documentation 中找到高级概述。 .

奇迹发生在 JSNI methods 上和 overlay types : 当一个类被加载时,它的所有 JSNI 方法都被提取出来,它们的 JS 主体被发送到浏览器,准备被执行(然后作为 JavaScript),类被即时重写以重新实现调用浏览器的 JSNI 方法(通过 你安装在那里的 Dev Plugin 并由 URL 中的 ?gwt.codesvr= 触发)以执行相应的 JS功能。这就是为什么 Java 对象在 JSNI 方法中被视为不透明句柄的原因;他们被分配了一个数字 ID 以将 Java 对象与服务器端的虚拟 JS 对象配对。对覆盖类型进行了类似但更复杂的重写,并且在将 JS 对象传递给 Java 代码(作为覆盖类型)时使用相同的 ID 映射。

顺便说一句,Super Dev Mode编译成 JavaScript(几乎)即时

关于gwt - GWT代码如何在开发代码中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12483341/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com