Apache maven-bundle-plugin 2.2.0 released!

January 17, 2011 By Stuart McCulloch 0

Today I released version 2.2.0 of the maven-bundle-plugin from Apache Felix. This release may look like a minor update because it only contains two fixes, but one of them is very important. The workhorse behind the maven-bundle-plugin, Peter Kriens’ bnd tool, has been upgraded from 0.0.384 to 1.15.0. The new version is much smarter in deciding which packages to export and import, and supports easy creation of Web Archive Bundles (WABs) which can act both as bundles and standard WAR files. Add numerous other small improvements and fixes to the mix and this should result in a much better experience overall.

Special mention should be made of the efforts of Juven Xu and Peter Kriens who worked together to add Nexus OSS staging to Peter’s Ant build. Previously bnd artifacts were manually uploaded by occasional third-party requests to MAVENUPLOAD, often a very laborious process. Third-party uploads to Maven Central have since been streamlined and automated with Nexus, but OSS hosting is still preferred by project owners who want to stage and check artifacts as part of their regular build process.

On behalf of all the OSGi developers who use the maven-bundle-plugin I’d like to thank Juven and Peter for their work getting the latest versions of bnd onto Maven Central!

Categories: Community, OSGi, Sonatype

From Plexus to Guice (#3): Creating a Guice Bean Extension Layer

January 22, 2010 By Stuart McCulloch 0

In the first two articles in this series you learned why Sonatype has decided to move our development efforts from Plexus to Guice and you’ve also been introduced to Sonatype’s efforts to create a Guice/Plexus integration library to make the migration from Plexus to Guice seamless.   In this post, I’m going to dive into the details of bean injection in Guice, and I’m going to demonstrate how you can use the general-purpose bean injection layer in the Guice/Plexus integation library to intialize a bean.  This post is highly technical and is meant for developers interested in the details of our attempts to bridge Plexus and Guice. (more…)

Categories: Maven, Sonatype Tags: , ,

From Plexus to Guice (#2): The Guice/Plexus Bridge and Custom Bean Injection

January 20, 2010 By Stuart McCulloch 0

In the next few articles of the “Plexus to Guice” series I will look at the modular design of our replacement Plexus container and show how you can configure a POB (Plain Old Bean) from Guice with a simple code example. In the first article of this series, Jason discussed the need to move to a more widely used and support container, and the reasons why we chose to standardize on Guice. As we migrate more Plexus-based applications (such as Maven) to Guice, we still to maintain backward-compatibility for all of the plugins and extensions which were developed using Plexus. In this post, I start to discuss the scope and initial efforts to create something we’re calling the Guice/Plexus “shim”. It is a library, a “container” that was developed to allow existing Plexus components to use Guice under the hood without any modification. (more…)

Nexus Pro: Support for OSGi Bundle Repositories (OBRs)

July 14, 2009 By Stuart McCulloch 0

Over the last month or so I have been working on adding OSGi Bundle Repository (OBR) support to Nexus Professional, and I am happy to announce this feature will be available in the 1.3.5 release. But what exactly is OBR and why should you care?

OBR has been around since 2006, it defines a small XML schema and Java API that allows clients to discover and deploy OSGi bundles by matching capabilities with requirements. Distributors provide XML describing their bundles, and this is used by OBR service implementations running on OSGi frameworks. Management clients talk to their local OBR service using the Java API.

(more…)

Categories: Nexus, OSGi Tags: , , ,