From Apache Archiva to Sonatype Nexus

July 29, 2009 By

This article was originally published in french on my personal blog in May 2009. <disclaimer> As a member of the Archiva team (though rarely active, I admit) I will try to defend it throughout this article. However, being a professional consultant first and foremost, I hope to keep my objectivity. I’ll let you be the judge … </disclaimer>

Having recently migrated a significant number of repository servers from Apache Archiva to Sonatype Nexus, I would like to share with you the process I followed, some tips, and point out a few pitfalls I encountered.nexus-real-logo A big Thank you to Tarpoon, C’est pas dur and all of my team for helping.

(more…)

Categories: Nexus, Sonatype

Writing Plugins for Nexus (Part 2)

July 24, 2009 By

As we said in first part of Nexus Plugins blog, Nexus itself is a Plexus application, we are quickly moving to OSGi runtime platform. The target for this new architecture is most probably Guice + Peaberry, a cool container and it’s cool extension.

Okay, but will we need to rewrite every plugin after the migration happen? Well, hopefully no. This is actually the reason, why are we in hurry defining the Plugin API and plugin development environment as much as possible in a way, to make this migration as seamless as possible to plugin developers (core developers are already prepared for this challenge). In short, we are Nexus plugins from having to know anything of Plexus.

In perfect world, a plugin written today using this technique, against today’s Nexus (powered by Plexus) should work without any problem after 6 months and the release of Nexus (powered by Guice + Peaberry). All you would have to do, is simply take your plugin bundle (a self-contained and self-sufficient package of the plugin) and move it from one Nexus to another. That’s it.

Again, this is our “ultimate goal”, but as with all software, we can’t predict any tumbler. We are trying hard, at least. The rest of this post provides more guidance on writing Nexus plugins with some hints for how to prepare for the transition to OSGi.

(more…)

Categories: Nexus

OpenDocument Java API Project Switches from Ant to Maven

July 22, 2009 By

ODFDOM, the OpenDocument Java API, has been released. You can read more about the project release here. From the site: “ODFDOM is an Apache 2 licensed Java library to easily create, access and manipulate ODF documents.” What’s interesting about this particular software release is the switch from Ant to Maven. Here’s the quote that caught my attention.

Last but not least, with the support by Benson Margulies, we were able to switch our build environment from ANT to Maven. By using Maven we made our dependencies declarative. We no longer add dependent JARs to our sources (e.g. the parser XercesImpl.jar), but are able to download them via Maven [Central] on demand. Following this idea of modularization, we were able to simplify the source structure of ODFDOM by moving our code-generation to a [new] project called relaxng2template.
Categories: Community Tags: ,

Introduction to OSGi with Pax, Maven, and Nexus Professional

July 20, 2009 By

We’ve released a pre-alpha version of the Maven Cookbook which contains a chapter on OSGi development with Maven via the Pax plugin from OPS4J. This chapter contains a series of recipes which will walk you through the process of creating an OSGi project, importing bundles from both a Maven repository and existing OSGi Bundle Repositories (OBR), and executing an OSGi runtime environment all with the help of the Maven Pax Plugin. The last few chapters provide a road map for developers interested in hosting and combining multiple Maven and OBR repositories into a single repository group with Nexus.

To read the pre-alpha, version 0.1.1 release of the Maven Cookbook, you can:

Categories: Book, Maven, OSGi Tags: , , , ,

Online Maven and Nexus Training Now Available from Sonatype

July 20, 2009 By

Sonatype – the Maven Company – is the best source for learning about efficient infrastructure for your software development teams. Starting this week, it is easier than ever to get started.

Sonatype now offers online training courses. No need to book a flight, hotel, or car: all it takes is a high-speed internet connection and a computer capable of signing into a WebEx training session.

We offer an introduction and an advanced course: Maven Mechanics and Development Infrastructure Design.

The first course, Maven Mechanics, offers the required knowledge for every software developer who works on a project that uses Maven to build and maintain software. After taking this class, you will understand the motivation for Maven, foundational concepts like the Maven Lifecycle, and the procedures for customizing a Maven build. It provides a solid foundation for anyone who wishes to proceed to take the second course.

The Development Infrastructure Design course goes into details of how to best design and implement a development infrastructure stack, from source control management, to repository management, build, and continuous integration. We use Maven, Nexus, m2eclipse, and Hudson technologies to cover these topics, and we discuss some of the emerging trends in this rapidly developing area of software development. Every software development project should have at least one engineer with the knowledge acquired in this course.

The online courses are delivered in two 4-hour sessions, generally on a Tuesday and a Thursday of the same week. For our enterprise customers, these courses can also be combined to create a comprehensive curriculum for on-site delivery.

If you would like to find out more about the courses, visit our Training page or contact us directly.