I have an OSGi bundle that was built using Maven by another team. The POM file declares its packaging as "bundle" and uses the Apache Felix plugin.

I need to deploy this artifact to a local Maven repository (Nexus) so that it can be used by our internal projects.

I have used the deploy:deploy-file target to deploy the bundle to the repository, just as you would with a standard JAR file and this works without error. I extracted the embedded POM from the bundle and passed that on the command line, so the command line was:

mvn deploy:deploy-file -Dfile=3rdpartybundle.jar -DpomFile=pom.xml -DrepositoryId=internal -Durl=http://internalserver/nexus


The issue is that when I deploy it like this, the packaging is set to bundle and as a result the name of the artifact in the repository ends up with a .bundle extension, instead of a .jar extension.

Now, we cannot figure out how to declare it as a dependency. If we declare it like this:

        &lt;dependency&gt;
            &lt;groupId&gt;...&lt;/groupId&gt;
            &lt;artifactId&gt;...&lt;/artifactId&gt;
            &lt;version&gt;...&lt;/version&gt;
            &lt;type&gt;bundle&lt;/type&gt;
        &lt;/dependency&gt;


We get an error stating that the dependency cannot be resolved. The interesting thing is that the GAV coordinates in the error message actually has "jar" as the value for the type of the dependency even though we set it as "bundle".

If we change the dependency to:

        &lt;dependency&gt;
            &lt;groupId&gt;...&lt;/groupId&gt;
            &lt;artifactId&gt;...&lt;/artifactId&gt;
            &lt;version&gt;...&lt;/version&gt;
            &lt;type&gt;jar&lt;/type&gt;
        &lt;/dependency&gt;


We get the exact same unresolved dependency error.

So how are you supposed to deploy an artifact packaged as a bundle to a Maven repository, so that it can be used as a compile time dependency for another project?

Thanks


Question: Windows Software to Mount Volume/Partition Image File
Answer: Try alcohol 120  and magicDisc