gpt4 book ai didi

java - 如何覆盖/替换 Maven 项目中的 GWT 类?

转载 作者:行者123 更新时间:2023-11-30 04:20:23 25 4
gpt4 key购买 nike

我想在 AbstractCellTable 类 中进行一些更改(将某些字段和方法的可见性更改为 protected 或公共(public)等)。我克隆了 AbstractCellTable.java 文件,对其进行了更改并将其放入我的 Eclipse 项目“commons”中(具有相同的包名称 com.google.gwt... )。

其他一些 GWT 项目使用 commons 项目。它们位于同一个 Eclipse 工作区中,并使用来自 commons 的源依赖项。我可以编译它们并使用标准 GWT Eclipse 插件替换的 AbstractCellTable 类

当我想将项目更改为 Maven 项目时,就会出现问题。安装commons项目(mvn clean install)没有问题。更改后的 AbstractCellTable.java 源文件出现在生成的 jar 文件中。但是当我编译依赖项目时,我遇到编译错误。我现在没有堆栈跟踪,但此问题的原因在于 GWT 编译器使用原始版本的 AbstractCellTable 类。错误表明 commons.jar 存在编译错误(原文如此!),即使之前已正确安装。

我已经尝试更改 pom.xml 中依赖项的顺序,但它不起作用。我正在考虑在我的存储库中安装自己版本的 gwt-user.jar,但这并不容易,因为 GWT 项目不依赖 Maven。

有没有更好的解决方案来替代原来的GWT类?

最佳答案

如果要编辑 GWT 文件,您需要创建一个同名的文件,并将其放在应用程序中与 gwt 相同的包结构中。

例如:AbstractCellTable 位于 gwt-user jar 中的 com.google.gwt.user.cellview.client 包中。因此,您的包中需要具有相同的包结构。

另一种方法是创建您自己的 Maven 模块,例如 custom-gwt-user 并将 gwt-user 作为其依赖项。并再次遵循相同的包结构。在入口点包中添加依赖项时,请确保在 plugins->plugin->dependencies->dependency 下提到了 gwt-user 依赖项,并添加 custom-gwt-user< 的两个依赖项/strong> 和 gwt-user依赖项->依赖项下,并确保您的自定义 gwt-user 位于顺序中的第一位。

关于java - 如何覆盖/替换 Maven 项目中的 GWT 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17188610/

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