<iframe src="//www.googletagmanager.com/ns.html?id=GTM-TT8R4P" height="0" width="0" style="display:none;visibility:hidden">

Sonatype Blog

Stay updated on the latest news from the makers of Nexus

Stuart McCulloch

Recent Posts by Stuart McCulloch:

Apache maven-bundle-plugin 2.2.0 released!

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.

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

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.

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

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.

Nexus Pro: Support for OSGi Bundle Repositories (OBRs)

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.