Archive

Archive for April 3rd, 2008

Nexus Repository Manager 1.0.0-beta-1 Released

Nexus is the next generation of the popular Proximity repository manager software for use with Apache Maven. This is the first public release of Nexus, and I believe it marks an important milestone in the practice of building software.

I’m not what you might call an early adopter when it comes to software. In the vast majority of applications I use, I know how to use less than 25% of the features. A long time ago, I realized I was spending too much time trying to keep the technology (software, hardware, configurations, whatever) going to get anything done in a reasonable amount of time. Today, my point of view is very pragmatic. For any new application, I generally ask myself what the software does that will make my life easier in concrete terms, and can I really depend on it to do these things reliably and with little or no babysitting. For instance, I generally don’t use the milestone releases of my IDE of choice, Eclipse; they’re simply not stable enough for me to be able to focus on the software I’m trying to write.

As a result of this viewpoint, you’re not going to hear me get very excited about beta releases of other people’s projects very often. You won’t hear me trying to sell you on the latest and greatest technology that probably overstates its capabilities. I’m not a big believer in the value contained in the promise of a piece of software, unless I have intimate knowledge of how it’s put together. In short, I’m not going to be your first choice for the job of technology evangelist.

Having said all of that, I do stand by my initial statement about Nexus. I do believe Nexus represents something new in the discipline of producing quality software. I can talk about the slick UI features that I love to look at; I can talk about how cool it is that you can reuse repository definitions in different groupings that themselves look like remote repositories to Maven; I could even talk about the fact that you can literally unzip and start Nexus with no configuration, and start using it immediately…which makes it incredibly easy to try out. But for me, these are all window dressing. What I really love about Nexus is how it puts its money where its mouth is. This is an application that just works. Period. For anyone in the software industry, you’ll know how rare this is.

I work with the guys who wrote, tested, and released Nexus, and having a chance to witness firsthand the use cases and quality control that went into this application, I can honestly say I’m really excited about this project. Maybe it means something that I’ve been developing the core of Maven for four years, and thinking almost exclusively of how to improve the way we build software for over three of those years; maybe it doesn’t. The good news is, you don’t have to take my word for it. Try it yourself. It’s dead simple to get started.

To download Nexus, visit the Nexus website, and click on the Download link. To learn how to start using Nexus, try the Getting Started link. For now, the best way to get started is to read the chapter on Nexus in Maven: The Definitive Guide; but it’s a good idea to bookmark the website as well, so you can find out how to tell us what you like, what you want to see but don’t, and what you might find that seems broken in this first beta release.

Please be sure to take it for a spin; I bet you’ll be glad you did.

Technorati Tags: , , , ,

News, Nexus

The m2eclipse project proposal at Eclipse: Maven married with Eclipse!

April 3rd, 2008 By jason
Comments Off

For Maven users interested in Maven integration with Eclipse, you might want to take note of the m2eclipse proposal submitted to Eclipse a couple days ago. This work is being lead by Eugene Kuleshov (also a Subclipse and Mylyn committer). You can discuss the project with Eugene and the rest of the team, in the newly created m2e newsgroup at Eclipse:

http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.m2e

m2eclipse

Introducing Nexus the Maven Repository Manager

April 3rd, 2008 By Brian Fox
Comments Off

<

p> In order to really leverage the power of Maven in an Enterprise environment, you need several things:

  • a location to deploy and share internal artifacts
  • a way to optimize the retrieval of external artifacts
  • a way to keep developers working when the network goes out.
  • a way to future proof your development process against repositories going away.
  • visibility into the artifacts being used
  • ways to move artifacts efficiently between remote offices
  • centralized control over the external repositories being used

Nexus is the answer to these problems and more. It combines the ability to deploy your artifacts easily without extensions with a powerful proxy and indexing engine.

<

p>

Some key features:

  • Runs out-of-the-box using an embedded Jetty instance on top of plexus. No messing around with some random Application Server here…just start the script and go!
  • No database required. Nexus stores the data using the filesystem and builds indexes with Lucene
  • It is able to read and convert Proximity configurations and data
  • Professionally written documentation
  • 100% configurable via a rich Ajax UI built with ExtJs
  • Full REST APIs made possible using Restlet
  • Full integration with Eclipse using m2eclipse and the Nexus indexer
  • Repository RSS feeds for recently deployed and cached artifacts. More on the way…
  • Full indexing and searching of locally hosted and proxied repositories. Nexus is able to download indexes from the remote repositories to allow a full search of the available content, not just content that has already been proxied
  • On-the-fly repository metadata correction: if a proxied repository contains snapshots and releases Nexus removes removes the versions from the metadata that don’t match the type or repository you have configured.
  • Checksum verification of downloaded artifacts. Policies control how Nexus handles from ignore all the way to require valid checksums
  • Logical groups: Nexus allows you to logically represent any number of proxied, or hosted repositories as a single group which accessible via a unified URL. This allows central control over the repositories used and the artifacts retrieved from them. No more relying on multiple repository configurations in your poms or developer settings
  • Repositories can be aggregated into multiple groups without duplicating the data on the disk
  • Artifact request optimization based on groupId or artifactId: You can configure Nexus to not look in certain places for certain artifacts. For example you wouldn’t need to search Maven’s central repository for your own organization’s artifacts.
  • Ability to present and proxy Maven 2.x repositories to Maven 1.x clients: this means that you can service all users of Maven 1.x and Maven 2.x in your organization using Nexus.
  • Intelligent NFC (not found cache), ability to persist NFC cache to disk. Complete ehcache config exposed to user for tuning.
  • Ability to check remote peer availability and make a Nexus proxy “offline” automatically (prevent any reach attempt toward unreachable remote repo) HTTP proxy and connection settings may be set “globally” or per repo remote peer. This means nexus is able to use more than one HTTP proxy simultaneously.

<

p>We have many more exciting features planned for Nexus in the near future.

Enough talk, click on over to the Nexus site where you can find more information and the download link. We’d love to hear from you on our user list and on irc.codehaus.org #nexus. Also be sure to visit our Maven book, which contains a Nexus chapter.

Maven, News, Nexus