gwt:没有可用于 java.util.Calendar 类型的源代码
Posted
技术标签:
【中文标题】gwt:没有可用于 java.util.Calendar 类型的源代码【英文标题】:gwt: No source code is available for type java.util.Calendar 【发布时间】:2010-11-13 03:37:24 【问题描述】:我尝试在我的 GWT 应用程序中使用java.util.Calendar
,如下所示:
Calendar cal = Calendar.getInstance();
然后我得到了这个错误:
没有
java.util.Calendar
类型的源代码;你是否 忘记继承所需的模块?
有人知道这是怎么回事吗?
【问题讨论】:
由于您在下面有一些回答似乎可以回答您的问题,请考虑通过单击其中一个投票数下方的勾号将其中一个标记为“已接受”(请参阅How do you accept an answer?)。这会显示哪个答案对您的帮助最大,并将声誉积分分配给答案的作者(以及您!)。 【参考方案1】:自 GWT 1.3 版以来,相关错误已记录在 GWT 中,您可以在此处找到它 - http://code.google.com/p/google-web-toolkit/issues/detail?id=603
1) 对 GWT 的日历类支持是来自 GWT 用户社区的长期未决请求。
2) 不幸的是,GWT 团队决定我们可以不用它。
您可以在 Google GWT 论坛上找到所有可能的讨论。您可以在论坛中查找其他替代方案,并且问题讨论线程会长达几页。
基本上,我们决定取消使用日历的任何客户端代码,只处理服务器端的内容。
【讨论】:
【参考方案2】:Calendar 类依赖于许多 GWT 不可能转换为 javascript 的 Java 类。如果它符合您的需求,您可以在客户端简单地执行new Date()
。有关详细信息,请参阅here。
你也可以试试gwt-calendar project。
【讨论】:
【参考方案3】:GWT 不支持 Calender 类,您必须使用 Date 类而不是 Calender。
【讨论】:
【参考方案4】:java.util.Date 仍然可以使用,您可以使用com.google.gwt.i18n.client.DateTimeFormat 进行任何需要的日期格式设置。
查看该链接以获取完整的示例代码。
【讨论】:
问题是DateTimeFormat
依赖于具有本机代码的com.google.gwt.i18n.client.LocaleInfo
。你有办法通过标准的 JUnit 测试来运行它吗?【参考方案5】:
https://developers.google.com/web-toolkit/doc/latest/RefJreEmulation 你不能使用 GWT 中的所有东西......!
【讨论】:
【参考方案6】:虽然我从未使用过 SWT,但我没想到您会需要源代码。但是,在使用各种 Java api 中的任何一个时,我从来没有收到过这条消息,只是试图使用它们中的一个类。所以我认为这要么是一条不正确的消息,要么是你在 IDE 中做了一些试图向你展示源代码的事情。您可以在 JDKs 目录中找到源代码的 zip。诸如 Eclipse 之类的 Id 能够将源代码 zip 与 jar 相关联,以便在您触发该操作时它们可以自动查找源代码。
【讨论】:
GWT使用java源码创建javascript,没有它就无法工作。单独的类文件不会削减它。它不是真正的 java ......它只是看起来像它;) 这没有回答问题。以上是关于gwt:没有可用于 java.util.Calendar 类型的源代码的主要内容,如果未能解决你的问题,请参考以下文章
Maven - 添加源依赖;但 Eclipse 中没有可用于 GWT 编译的 Java 源文件
如何在 GWT 中为 AppEngine SystemProperty 继承模块