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

Я хочу иметь собственную проверку «проверить, что идентификатор метода класса X не длиннее 18 символов». Я хочу, чтобы eclipse показывал нарушения моего специального правила в IDE как предупреждение или ошибку.

Однако я больше не могу установить собственный плагин eclipse...

Я начал с проверки проекта net.sf.eclipsecs.sample, который использует точку расширения eclipse "net.sf.eclipsecs.core.checkstyleAddonProvider", чтобы он мог вносить проверки в плагин стиля проверки eclipse.

Ничего не меняя, я экспортировал его как плагин развертывания и поместил полученный jar-файл в папку dropins моего затмения. Плагин работал, и я увидел MethodLimitCheck (из примера проекта) в пользовательском интерфейсе страницы настроек плагина eclipse checkstyle.

Однако мне хотелось, чтобы мое собственное правило было активным, поэтому я решил добавить собственный подкласс AbstractCheck и внес необходимые изменения в файлы конфигурации. Но ничего не изменилось. Я решил удалить установленный плагин и установить новый экспорт заново и с тех пор мне больше не удавалось установить какую-либо пользовательскую проверку. Я вернул пример проекта в исходное состояние и попытался установить его снова, но в пользовательском интерфейсе плагина контрольного стиля eclipse больше не видно никаких изменений.

Как я могу выяснить, почему eclipse больше не устанавливает мой плагин? Я ничего не вижу в журнале ошибок или в /.metadata/.log

Когда я пытаюсь установить плагин через консоль хоста osgi с помощью «install file:///plugin.jar» и «start», он имеет статус «ACTIVE», но я думаю, что он не может внести изменения в пользовательский интерфейс после загрузки. Я всегда запускаю eclipse с "-clean -debug", установив параметры отладки в файле .options.

[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] Adding IU: net.sf.eclipsecs.sample 10.14.1.202403211910-unmodified
[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] Adding IU property: net.sf.eclipsecs.sample 10.14.1.202403211910-unmodified->{org.eclipse.equinox.p2.type.lock=1, org.eclipse.equinox.p2.internal.inclusion.rules=OPTIONAL, org.eclipse.equinox.p2.reconciler.dropins=true}
[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] No installable units to remove.
[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] No IU properties to remove.
[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] No installable units to move.
[p2] Fri Mar 22 11:09:41 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] No extra requirements.
[p2] Fri Mar 22 11:09:42 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] [plan] [R]net.sf.eclipsecs.sample 10.14.1.202403212020 will be removed
[p2] Fri Mar 22 11:09:42 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] [plan] [R]net.sf.eclipsecs.sample 10.14.1.202403212020 will be added
[p2] Fri Mar 22 11:09:42 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] [plan] Some units will not be installed, because they are already installed or there are dependency issues:
[p2] Fri Mar 22 11:09:42 CET 2024 - [Start Level: Equinox Container: 35fb4e67-0f72-47e8-81fe-24cd62603c7f] [reconciler] [plan] net.sf.eclipsecs.sample 10.14.1.202403211910-unmodified

Помогите, написание пользовательских проверок не должно быть таким сложным :(

Затмение 2024-03 (4.31.0) Проект Eclipse Checkstyle 10.14.1.202403151842 (устанавливается через Marketplace) Мак ОС 14.4

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я переустановил затмение. Одна серьезная ошибка, которую я совершил, заключалась в том, что я удалял файлы из файловой системы, например. из каталога dropins.

Теперь у меня работает следующий рабочий процесс разработки для обновления моих пользовательских проверок стиля проверки:

  1. удалите мой плагин из диалогового окна «Сведения об установке Eclipse IDE» с помощью кнопки «Удалить...».
  2. перезапустить затмение
  3. разработайте плагин проверки стиля проверки eclipse и увеличьте номер версии в
  4. экспортируйте его как развертываемый плагин и выберите опцию «установить на хост» в экспорте.
  5. мастер экспорта предложит вам перезапустить затмение, поэтому перезапустите затмение

Теперь плагин активен и добавляет новые средства проверки, теперь вам нужно перейти в настройки стиля проверки и «скопировать» встроенную конфигурацию проверки, чтобы у вас была изменяемая конфигурация. Отредактируйте скопированную конфигурацию, удалив все ненужные проверки и добавляя только свои собственные проверки.

Всякий раз, когда возникает ошибка, журнал ошибок дает довольно хорошую подсказку о том, что пошло не так.

Еще одна большая ошибка, которую я совершил, заключалась в том, что в Mac OS у меня было несколько установок Eclipse, и моя установка Eclipse называлась «Eclipse 4». Это пространство отключило плагин стиля проверки затмения и вызвало проблемы. Убедитесь, что в имени нет пробелов.

И что бы вы ни делали: не редактируйте и не удаляйте плагины из eclipse вручную. Делайте это только через p2, даже если вы разместили файлы в каталоге dropins.

Другие вопросы по теме