Creates a Maven POM and example source to build a working OSGi bundle, use -o to overwrite an existing bundle. When this script is used outside of a Pax-Construct project, it creates a standalone POM.
| -Dinterface=false | remove all public (exported) APIs |
| -Dinternals=false | remove all internal (private) code |
| -Dactivator=false | remove any bundle activators |
| -Djunit or -Djunit=version | add test dependencies and example tests |
| -Dspring or -Dspring=version | add example Spring Dynamic Modules bean + XML |
| -DnoDeps | don't add any additional dependencies |
| -DbundleGroupId=groupId | provide a customized groupId to the new bundle |
| -DparentId=groupId:artifactId | look for a different parent POM |
| -DtargetDirectory=path | alternative location of the bundle |
| -Dcontents=groupId:artifactId:version,... | include content from selected archetypes |
| -DremoteRepositories=url list | where to download the bundle archetype(s) |
| -DarchetypeVersion=version | use a different release of the Pax archetype |
| -DattachPom=false | don't add this bundle as a module |
| -DcompactIds=false | don't try to combine name segments |
-DparentId is useful when you want to link the new bundle into an existing non Pax-Construct project.
pax-create-bundle -n simple-api -p org.example.simple -- "-Dinternals=false" pax-create-bundle -n simple-impl -p org.example.simple -- "-Dinterface=false"