Как настроить поведение параметра назначения для быстрого исправления нового поля в eclipse?

Мне нравятся быстрые исправления Eclipse. Я часто использую «назначить параметр новому полю», но мне бы очень хотелось настроить его так, чтобы он не включал ключевое слово final. (GWT RPC не сериализует окончательные поля, и я сейчас много работаю с GWT RPC.)

Мне не удалось найти параметр, управляющий этим быстрым исправлением. Есть ли какой-то параметр, который мне не хватает, или мне нужно углубиться в документацию по разработке плагинов и сделать свое собственное быстрое исправление «не окончательное поле»?

Я использую Эклипс 3.4

ОБНОВЛЕНИЕ - пометил ответ о точке расширения разрешения маркера как принятый, так как похоже, что в конфигурации нет запеченной опции.


person Peter Recore    schedule 23.07.2009    source источник


Ответы (5)


Не самый простой способ — расширить точку расширения org.eclipse.ui.ide.markerResolution.

<extension point="org.eclipse.ui.ide.markerResolution">
      <markerResolutionGenerator
         markerType="org.eclipse.core.resources.problemmarker"
         class="org.eclipse.escript.quickfix.QuickFixer"/>
</extension>

Дополнительную информацию можно найти в на Eclipse Wiki.

person Community    schedule 23.07.2009

Используйте действия сохранения Eclipse для редактора Java.

Перейдите в «Окно» -> «Настройки» -> «Java» -> «Редактор» -> «Действия сохранения» Отметьте «Выполнять выбранные действия при сохранении». Отметьте «Действия добавления». Добавьте следующее действие «Добавить конечный модификатор в закрытые поля».

См. прикрепленный снимок экрана.

Действие сохранения Eclipse

person Lawrence O    schedule 12.07.2013

Вы также можете заглянуть в «Быстрое исправление для бедняков» (http://www.jave.de/eclipse/poormansquickfix/index.html). Я использовал его некоторое время назад, и это может позволить настроить вас, как вы хотите. Я не могу гарантировать, что он все еще работает... извините.

person cjstehno    schedule 24.07.2009
comment
интересный плагин. к сожалению, я не думаю, что это поможет с моей конкретной проблемой, потому что кажется, что вы можете определить новые быстрые исправления только для фактических ошибок компиляции, но я не использую параметр assign для нового поля, чтобы исправить ошибку, просто чтобы быть ленивым . ой. я сказал лень? я имел в виду эффективный. в любом случае, это может послужить примером для работы, когда я закончу реализацию своего собственного быстрого исправления. - person Peter Recore; 24.07.2009

Ладно, это ерунда, но:

Quickfix делает его окончательным, только если вы работаете с параметром конструктора; из параметра простой функции, это делает его неокончательным. Таким образом, вы можете либо сделать конструктор неконструктором (изменить имя и указать тип возвращаемого значения), либо передать все параметры новой функции и запустить быстрое исправление для функции. Затем вернитесь к конструктору или вставьте функцию.

Как я уже сказал, глупо, но, по крайней мере, это легко.

person Carl Manaster    schedule 24.07.2009

Недавно перейдя на Eclipse 3.4, я столкнулся с проблемой «последнего» члена.

В Eclipse 3.4 есть новое поведение, которое изменяет частный член на final (даже если вы ввели его без этого ключевого слова), если он не поддается изменению (например, не объявлен сеттер...)

Можно, наверное, отключить...

person KLE    schedule 30.07.2009