Hi, I have a single-module Maven project [1] where I do the following:
- build an OSGi bundle - create an aggregated feature composed of the Sling Starter and the local bundle + requirements [2] - start the created aggregate for integration tests using the feature- launcher-maven-plugin [3] This breaks down because when starting the aggregate the bundle is not yet installed in the local repository ( $HOME/.m2/repository ), but it is present in the project directory ( target/$ARTIFACTID.jar ). The feature-launcher-maven-plugin runs the feature-launcher as a child process, so there can be no sharing of classpaths. I'm looking for ideas on how to make this work. I have a couple, but I'm not sure they're the best ones 1. extend the feature launcher to accept groupdId/artifactId/version → URL mappings that will override the default lookup This could be a new command line arguments --artifactOverrides=org.apache.sling:org.apache.sling.servlets.oidc- rp:0.1-SNAPSHOT=target/org.apache.sling.servlets.oidc-rp-0.1- SNAPSHOT.jar 2. add a mechanism to the feature launcher maven plugin to install selected artifacts in a dedicated repository The Maven plugin could - install the jar file in a Maven repository structure under target/feature-launcher-maven-plugin/local-repository - configure the feature launcher to additionally use this artifact url Something I did rule out quite quickly is to install the artifact early on in the local repository ( $HOME/.m2/repository ), because that be inconsistent with the Maven lifecycle. Ideas/comments welcome, Thanks, Robert [1]: https://github.com/apache/sling-whiteboard/blob/master/org.apache.sling.servlets.oidc-rp/pom.xml [2]: https://github.com/apache/sling-whiteboard/blob/e4f3c260813792f9f1d1e2262accdd50c35d6edb/org.apache.sling.servlets.oidc-rp/pom.xml#L84-L115 [3]: https://github.com/apache/sling-whiteboard/blob/e4f3c260813792f9f1d1e2262accdd50c35d6edb/org.apache.sling.servlets.oidc-rp/pom.xml#L189-L203