Как я могу отладить пользовательскую аннотацию в Lombok?

Я пытаюсь расширить Lombok, создав собственную аннотацию.

Мне удалось иметь LombokizedEclipse.launch созданный муравьем, и я написал before а также after файлы.

ant test не в моей аннотации (что ожидается), и теперь я хотел бы отладить Handle* классы.

Я на Mac, затмение Luna 4.4 и Java 1.8 обновление 45.

Как я могу это сделать? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

Заранее спасибо!

2 ответа

Решение

Теперь я понимаю, что Lombok можно отлаживать двумя разными способами:

  1. Отладка с помощью тестов Lombok JUnit (спасибо, Roel Spilker)
  2. Отладка во втором экземпляре Eclipse, запущенном первым экземпляром

После клонирования хранилища lombok я выполнил следующие шаги для достижения обоих методов:

Отладка с помощью тестов Lombok JUnit (спасибо, Roel Spilker)

  1. $ ant eclipse
  2. Импортировать (существующий) проект в Eclipse
  3. $ ant setupJavaOracle8TestEnvironment
  4. $ ant dist
  5. $ java -jar dist/lombok.jar
  6. Убедитесь, что JDK8, настроенный в Eclipse, называется JavaSE-1.8, Перейдите в Eclipse -> Настройки -> Java -> Установленные JRE, чтобы изменить его.
  7. Обновить проект Eclipse (просто нажмите F5)
  8. Щелкните правой кнопкой мыши вновь созданную конфигурацию запуска RunLombokTests OracleJDK8.launch и запустить / отладить
  9. RunAllTests выполняется: Runs: 455/454 (1 skipped), Errors: 0, Failures: 89
  10. $ ant test работает RunAllTests успешно: Tests run: 455, Failures: 0, Errors: 0, Skipped: 1
  11. ПРИМЕЧАНИЕ: установка точки останова, например, в HandleGetter.handle работает, я не знаю, почему в Eclipse (шаг 9) TestWithEcj, хотя остальные 54 (и 1 пропущены) проходят.

Отладка во втором экземпляре Eclipse, запущенном первым экземпляром

  1. $ ant dist
  2. $ ant eclipseForDebugging
  3. Введите вашу установку Eclipse (подсказка: это родительская папка каталога plugins)
  4. Запустите Eclipse и обновите проект
  5. Щелкните правой кнопкой мыши вновь созданную конфигурацию запуска LombokizedEclipse.launch и запустить / отладить
  6. Создайте новый проект во втором экземпляре Eclipse
  7. Добавьте свой кастом lombok.jar в путь к классу
  8. Аннотировать с помощью аннотации Lombok (или по вашему желанию)
  9. Первый экземпляр Eclipse должен вступить во владение при отладке (и если есть точки останова)

Вы можете запустить модульные тесты в Eclipse и установить точки останова. Бежать /test/transform/src/lombok/transform/TestWithDelombok.java только для тестирования Javac и /test/transform/src/lombok/transform/RunTransformTests.java для запуска всех тестов.

Раскрытие информации: я разработчик Lombok.

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