Как получить зависимость org.mangosdk.spi.ProviderFor для написания пользовательского преобразования Lombok?

Я пишу пользовательское преобразование Lombok, но я застрял, потому что обработчики Lombok требуют использования аннотации org.mangosdk.spi.ProviderFor, и я не могу найти ее в репозиториях Maven. Как вы должны получить эту зависимость при создании пользовательского преобразования Lombok?

Я попытался посмотреть, как эта зависимость извлекается в https://github.com/rzwitserloot/lombok, но у них просто есть собственная копия библиотеки в каталоге lib, что, как мне кажется, является очень негибким способом управления вашими зависимостями, поэтому я бы не стал рассматривать его для своего собственного проекта.

Итак, если у меня есть проект Maven для расширения Lombok, как мне получить этот класс org.mangosdk.spi.ProviderFor?


person gvlasov    schedule 13.05.2015    source источник


Ответы (2)


Ломбок использует Ant+Ivy, а не Maven. Lombok не требует использования аннотации ProviderFor. Все, что делает аннотация, — это автоматическое создание файла META-INF/services, который не входит в стандартный набор API-интерфейсов Java. Вы также можете поддерживать такой файл вручную.

Для получения дополнительной информации об интерфейсе поставщика услуг вы также можете ознакомиться с документацией проекта SPI.

Существует похожий проект, который в настоящее время имеет лучшую поддержку maven.

NB. Поскольку Google Code скоро прекратит работу, этот проект находится в процессе миграции на Github.

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

person Roel Spilker    schedule 15.05.2015
comment
Спасибо за прекрасную библиотеку. Я уже сам понял, как сделать пользовательское преобразование (не могли бы вы проверить запросы на включение на Github, пожалуйста?), но объяснение от разработчика проекта всегда ценно. - person gvlasov; 15.05.2015
comment
Спасибо, @roel-spilker, есть ли планы по переходу на Maven или Gradle? - person Mikhail Kopylov; 16.11.2017

используйте неофициальный репозиторий maven 'http://www.ebi.ac.uk/~maven/m2repo'

person Viktor Alenkov    schedule 01.01.2017