java - GWT依赖的解释

标签 java gwt jar dependencies

GWT 2.5.1 当前附带以下 JAR:

  • validation-api-1.0.0.GA-sources.jar
  • validation-api-1.0.0.GA.jar
  • gwt-dev.jar
  • gwt-user.jar
  • gwt-elemental.jar
  • gwt-codeserver.jar
  • requestfactory-apt.jar
  • requestfactory-client.jar
  • requestfactory-apt-src.jar
  • requestfactory-client+src.jar
  • requestfactory-client-src.jar
  • requestfactory-server.jar
  • requestfactory-server-src.jar
  • requestfactory-server+src.jar
  • gwt-servlet.jar
  • gwt-servlet-deps.jar
  • gwt-soyc-vis.jar
  • gwt-api-checker.jar

请有经验的 GWT 工程师给我解释一下:

  1. 每个 JAR 文件的用途是什么?其中一些是显而易见的(gwt-user.jar 等),但有些则不是。例如,requestfactory-apt.jar 是什么?显然它与 RequestFactory 有关,但什么是 apt,它是客户端代码、共享代码还是服务器代码? ETC。;和
  2. 每个 JAR 属于哪个“层”(客户端、共享、服务器)?和
  3. 我可以假设所有源 JAR (*-src.jar) 都应该在客户端/共享层上,因此 GWT 需要它们的源来交叉编译成 JavaScript?

GWT 的 ZIP 文件似乎不包含解释这些内容的任何文档,GWT API 文档也不包含。

最佳答案

  • gwt-servlet-deps.jargwt-servlet.jar 需要的第三方依赖。这些不直接包含在 gwt-serlvet.jar 中,以便更容易将其部署到 Maven Central。
  • requestfactory-apt.jar 是一个注解处理器(APT == Annotation Processor Tool),它必须在编译时出现在你的类路径中(javac compile-时间,而不是 GWT 编译时),并将在服务器端生成 RequestFactory 所需的一堆 Java 类。如果您希望在编译类后运行该工具,它还包括 ValidationTool。您会找到更多信息 in the wiki
  • 所有 -src.jar 仅包含源代码并且仅对调试有用(进入代码)。
  • +src.jar 包含已编译的类及其源代码。换句话说,requestfactory-client+src.jarrequestfactory-client.jar + requestfactory-client-src.jar 相同/li>
  • 所有 requestfactory-* JAR 都包含共享类。
  • requestfactory-client 是纯 Java RequestFactory 客户端(内部没有特定于 GWT 的代码),可用于服务器、桌面应用程序或移动 Java 应用程序(例如 Android)。该 JAR 也“包含”在 gwt-user.jar 中。
  • requestfactory-server 包含 RequestFactoryServlet 和相关类。此 JAR 也“包含”在 gwt-user.jargwt-servlet.jar 中。请注意,requestfactory-server 依赖于第三方库;所有这些都打包在 gwt-serlvet-deps.jar 中(如果你想要/需要详细信息,你必须去看看 Maven Central 中的依赖关系,或者看看 GWT 构建脚本)
  • AFAICT,gwt-soyc-vis 已遗留且无用。
  • 最后,gwt-api-checker 是一个用于检查 GWT 版本之间 API 兼容性的工具。有一些文档 in the wiki但它可能有点过时了。仅供引用,在构建 GWT 本身时使用此工具来验证是否引入了不需要的向后不兼容的更改。

关于java - GWT依赖的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20428994/

相关文章:

java gwt richtextarea 更改字体系列

java - 在运行时加载 JDBC 驱动程序

java - 从插件重新编译反编译的类

java - 使用归约法求中位数

java - 将 ScrollPanel 添加到 CellTable

java - 高频更新时出现 StaleObjectStateException

java - GWT 列表框多选

GWT 2.1 RequestFactory 多级关系群体

java - 特定 wav 文件无法加载,而其他文件加载没有错误

java - 我如何告诉我的应用程序它不应该使用 jar 中的外部服务提供者?