moquette-io / moquette

Java MQTT lightweight broker
http://moquette-io.github.io/moquette/
Apache License 2.0
2.32k stars 818 forks source link

OSGify broker #848

Closed gg-dim closed 2 months ago

gg-dim commented 4 months ago

Release notes

Generate correct MANIFEST.MF with bnd

What does this PR do?

We added the bnd-maven-plugin to the parent pom.xml and a bnd.bnd file to generate a correct and complete MANIFEST.MF needed for OSGi and other projects to use the broker.

Why is it important/What is the impact to the user?

Without a correct MANIFEST.MF the broken can't be used in several open source (OSGi based) projects.

Checklist

Author's Checklist

How to test this PR locally

Add the Broker to a OSGi or BND project.

Related issues

Use cases

andsel commented 2 months ago

Thank's @gg-dim for contributing. Is the BND plugin executed during the usual flow of generation of Moquette jars? Did you tested on an OSGi container?

gg-dim commented 2 months ago

Yes, the BND part is done while generation of the jars. Yes, I tested it in an OSGi environment. We use a locally build variant in our org.gecko.messaging project. I built an OSGi service around it, which is used in our n-n tests as a MQTT broker (e.g. Test)

andsel commented 2 months ago

Thanks @gg-dim for contributing! Once CI finish, I'll merge it.