Eclipse:重构 - 重命名GWT uibinder java bean不重命名模板ui.xml文件

时间:2011-10-02 15:34:43

标签: java eclipse gwt google-eclipse-plugin

使用Eclipse Google插件时,在创建gwt uibinder对时,会得到一个java bean文件及其对应的.ui.xml模板文件。

我相信我曾经能够在Eclipse Helios中做到这一点: 右键单击uibinder集的java bean,重构它以重命名它,我可以配置重构对话框以重命名.ui.xml模板文件。

最近,我一直在使用Eclipse 3.7.0和最新的GPE。我不能再这样做了。可能是我忘记了怎么做。有人请提醒我 - 谢谢。

e.g。重命名uibinder对

Hello.java, Hello.ui.xml

Bello.java, Bello.ui.xml

也许,从一开始就没有可能,我错误地记得。

1 个答案:

答案 0 :(得分:0)

我没有注意到这个功能,我只是试了一下,重命名java或ui.xml会给你留下一个错误,直到你重命名另一个文件。请注意,file.java代码未映射到file.ui.xml,因为设计可以使用@UiTemplate将file.java链接到somethingelse.ui.xml。这可能是不起作用的原因。像这样自动更改ui.xml文件名可能会导致大量的更改。

但是有一些重构。

重构能够跟踪@UiField名称的更改。如果我重命名(使用Alt-R)我的file.java文件中已用@UiField注释的字段,则ui.xml文件中的ui:字段也会更改。

现在这里有点棘手。假设我有foo.java,foo.ui.xml和foo2.java,foo2.java使用foo.ui.xml UI模板(通过@UiTemplate注释)。 ui.xml文件有一个Button调用栏,因此foo.java和foo2.java中的每一个都有@UiField(“bar”)按钮栏。到目前为止跟我来?

在Eclipse中,我打开foo.java,并使用Alt-R我将bar更改为baz。 ui.xml文件将其ui:field =“bar”更改为ui:field =“baz”,并将foo.java中引用条的所有注释(例如@UiField和@UiHandler)更新为引用baz。但foo2.java中的代码是而不是已更改,现在我需要修复一个错误。 foo2.java仍然希望在foo.ui.xml中看到一个名为bar的按钮。

同样,如果我打开foo2.java,并使用Alt-R我将bar更改为baz,foo.ui.xml中的ui:field =“bar”是而不是已更改,并且您现在有一个错误。

不确定是否有任何记录。也许你模糊地想起了这种重构。