build: add OSGi support to all deployable modules (#1477)#5011
Conversation
|
It seems to me that this press release is lacking in explanation. For example, could you explain why you are removing the generator... |
|
|
Why are you including the test projects in this PR? What added value do these projects bring to OSGi? |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #5011 +/- ##
===========================================
Coverage 58.711% 58.711%
Complexity 2592 2592
===========================================
Files 702 702
Lines 40217 40217
Branches 7327 7327
===========================================
Hits 23612 23612
Misses 13634 13634
Partials 2971 2971
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
There is no added value. I included them because it reduces the added build complexity of this PR with a negligible performance hit to the build. If a new module is added to this project, the only OSGi configuration needed would be to define I have commited a fix (ced4bfe) regarding this. I had to add configurations per deployable module. Any new module would also need this. |
|
Could you please squash your commits to make the PR easier to read? Thank you. |
ced4bfe to
d248dac
Compare
@jlerbsc Done |
d248dac to
2c691f7
Compare
2c691f7 to
b4e443b
Compare
|
"Future work (not in this PR) There is no need to submit this pull request, as JP is not intended to provide features for other projects. However, you could create a separate project specifically designed to provide these user-friendly features. |
|
Thank you for this PR. |
Closes #1477.
Adds OSGi metadata to all published modules automatically by wiring bnd-maven-plugin into the parent POM. Each module's jar now exposes Bundle-SymbolicName, Bundle-Version, and appropriate Export-Package / Import-Package headers, so the artifacts can be dropped into Felix/Equinox without repackaging.
Verification
mvn clean installsucceeds; generated MANIFEST.MF inspected for each module.Loaded javaparser-core jar into a OSGi project to confirm the bundle resolves.
No changes to non-OSGi Maven/Gradle consumers — same coordinates, same classes.
Future work (not in this PR)
P2 repository / Eclipse RCP (Equinox) support would require either consumers building from source or hosting an Eclipse update site — happy to open a separate issue if there's interest.