Fix resource bundle annotation processing#72
Conversation
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughMaven build configuration is being reorganized by moving annotation processor management from the parent pom.xml to the monitor-server submodule, including explicit versioning for MapStruct and Lombok processors. Additionally, error handling in SecurityAnalysisRunComputationStep is cleaned up, and new tests validate ReportResourceBundle service registration and resolution. Changes
Suggested reviewers
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. 📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|



PR Summary
When annotationProcessorPaths is configured in the Maven compiler plugin, Maven uses only the explicitly listed processors. It no longer discovers processors from the compile classpath.
This broke
@AutoService, which generates the META-INF/services/com.powsybl.commons.report.ReportResourceBundle descriptor at compile time. Without that descriptor, ServiceLoader-based discovery fails at runtime with "Report bundle not found".The root cause was that MapStruct requires annotationProcessorPaths for correct Lombok ordering, but this was defined in the parent POM (affecting all modules), silently disabling AutoService in monitor-worker-server.
If one need autoservice annotation processing, they need to be added below mapstruct annotations processing as per https://mapstruct.org/documentation/installation/.