Author Archives: Tim O'Brien

Nexus OSS switched to the Eclipse Public License: A Clarification and an Observation


June 27, 2012 By Tim O'Brien

While I was discussing a particularly tricky Nexus configuration issue with a power user of Nexus last week I suggested that he write and ship a custom plugin with Nexus OSS. His response, “I’m not going to modify Nexus, it is covered under the AGPL?” Before I corrected him to tell him that Nexus 2.0 switched back to the Eclipse Public License back in February I tried to find out what the AGPL meant to this developer. The results were interesting, but before I get into that reaction, I’d like to take this time to make an unmistakable statement for those of you who missed the switch:

Nexus OSS is covered by the Eclipse Public License Version 1.0

Any questions? I was going to try to use the “blink” tag, but I was told that might be overkill. Basic clarification here is that Nexus OSS has nothing to do with the AGPL. If someone tells you that, point them at the 36 point, red letter announcement in this blog post.

Still not convinced? Take a look at the NOTICE.txt file in the Nexus OSS distribution you just downloaded. You’ll see the following statement:

This program and the accompanying materials are made available under the terms of the Eclipse Public License Version 1.0, which accompanies this distribution and is available at http://www.eclipse.org/legal/epl-v10.html.

If you are looking for more proof, here is an excerpt from Jason’s interview with InfoQ in February:

InfoQ: You recently announced that the upcoming Nexus repository would be licensed under the EPL-1.0 rather than the AGPLv3. What prompted the change of license?

Jason van Zyl: We find that the community is not receptive to the use of the AGPL in general, and we’ve had a few cases with potential contributors unwilling to publicly release their Nexus plugins because of the AGPL. The AGPL is a fairly aggressive license and just hasn’t been around as long as other well known licenses like the EPL. The AGPL tends to make lawyers wary and we don’t want to hinder adoption because of legal concerns. To date we have only had a small handful of plugins contributed to the Nexus project and we hope to encourage more participation from the community and expand the plugin ecosystem by adopting the EPL.

Why was he under this impression? This somewhat problematic comparison matrix had incorrect information until this morning, and I don’t think we made a big deal about the license switch for Nexus 2.0 to the Eclipse Public License Version 1.0 during our launch of the Nexus 2.0 features in February. We were focused on the compelling features we released with Nexus 2.0, but this license switch is a big deal.

After I corrected him, we started talking about what the AGPL really means. He took five minutes to tell me what his corporate lawyers had told him, and I took an equivalent amount of time to tell him what I had heard. The only thing we could agree on about the AGPL was that two different legal professionals had conflicting interpretations of the license with his expressing concern that the AGPL hadn’t been tested in a court. I understood his concerns, and skipped the rest of the conversation, “Well it doesn’t matter, because Nexus OSS is covered by the same license that covers the Eclipse IDE.”

Nexus Pro and Nexus OSS 2.0.6 Now Available: Stability and Security Fixes


June 26, 2012 By Tim O'Brien

We’re pleased to announce the availability of Nexus Professional 2.0.6. This is our sixth update to Nexus 2.0 since February, and this release includes a number of important bug fixes.

  • Nexus Professional Issue #4372 – Nexus running in ‘/’ breaks licensing redirection
  • Nexus Professional Issue #4374 – “upload a license file” link doesn’t work in IE9
  • NEXUS-5096 – Security should cache created WildcardPermission objects, not recreating them over and over again
  • NEXUS-5099 – Memory leak in attributes upgrader when running against virtual M1 -> M2 repo

If you are interested in evaluating Nexus Professional, you can download a 15 day evaluation and get started today. If you are an existing customer looking to upgrade to Nexus Professional 2.0.6 , go to our new Sonatype Support portal at http://support.sonatype.com.

To download Nexus OSS, visit http://nexus.sonatype.org.

How to Consume and Publish Artifacts with Nexus and Apache Ivy


June 21, 2012 By Tim O'Brien

Yesterday we published a Ivy-specific evaluation guide for Nexus Professional, and today we’re diving into the details of how to get Ivy to work with both Nexus OSS and Nexus Pro. Here are some simple Knowledge Base entries from our Support portal that do just that:

As we expand our coverage of build tools and technologies, we’d encourage you tell us which build tools you use for development. Next on our list is covering Nexus integration with Ant + the Aether Ant tasks.

Does Nexus Pro Support Ant + Ivy Builds? Yes it does.


June 20, 2012 By Tim O'Brien

Java developers adapting an existing Ant build to dependency management often turn to Ivy. Here’s an evaluation guide for Nexus Professional using two, very simple Ant+Ivy projects. If you are evaluating Nexus Professional, or if you are just looking for some sample projects that configure an Ant + Ivy build to use a repository take a look at this guide. These two projects have build.xml, ivy.xml, and ivysettings.xml files that demonstrate the simplest case of configuring an Ivy build to:

  • Download dependencies from a Nexus Repository Group with Ivy
  • Deploy an Artifact to a Nexus Snapshot Repository from Ivy
  • Staging an Artifact to a Nexus Staging Repository from Ivy

Download Nexus Professional, and then get the eval guide.

Update 2013-05: The evaluation guide has been updated and is now available in HTML and PDF format.

How to Publish, Consume, and Stage Artifacts to Nexus from Gradle


June 19, 2012 By Tim O'Brien

Last week when we published a Gradle-specific evaluation guide for Nexus Professional I failed to mention that Gradle also works well with Nexus OSS. Here are some simple Knowledge Base entries from our Support portal that put the details into how to publish and consume artifacts using Gradle and Nexus: