Я не заметил этой возможности, и я только что опробовал ее, и переименование java или ui.xml оставляет вас с ошибкой, пока вы не переименуете другой файл.Обратите внимание, что не обязательно, чтобы код file.java отображался в file.ui.xml, так как дизайн мог использовать @UiTemplate для связи file.java с чем-тоelse.ui.xml.Это может быть причиной того, что это не сработает.Такое автоматическое изменение имени файла ui.xml может привести к большому каскаду изменений.
Но существует некоторый рефакторинг.
На что способен рефакторинготслеживание изменений в именах @UiField.Если я переименую (используя Alt-R) поле в моем файле file.java, которое было аннотировано @UiField, поле ui: в файле ui.xml также изменится.
Теперь вот немного хитрости.Допустим, у меня есть foo.java, foo.ui.xml и foo2.java, а foo2.java использует шаблон пользовательского интерфейса foo.ui.xml (с помощью аннотации @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), обновляются до ссылочной базы.Но код в foo2.java не изменился, и теперь есть ошибка, которую мне нужно исправить.foo2.java по-прежнему ожидает увидеть кнопку с именем bar внутри foo.ui.xml.
Аналогично, если я открываю foo2.java и, используя Alt-R, я изменяю bar на baz, пользовательский интерфейс: field ="bar" в файле foo.ui.xml не изменен, и теперь у вас есть ошибка.
Не уверен, если что-то из этого где-то задокументировано.Может быть, вы смутно помните этот рефакторинг.