Next Generation Maven Development Stack @ JFokus


January 26, 2010 By Jason van Zyl

For my talk today at JFokus today I’ve taken the liberty of starting some notes for folks interested in attending. There’s a lot to cover and so I thought I would try the approach of providing some material up front so the session can be more of a dialog. I’m going to attempt to cover everything in the picture below and save the demos folks might want to see for the Sonatype booth. Happy to chat with folks and do any demos before and after the presentation. Just stop by!

Stack.png

### Maven Stack Infrastructure

I’m going to talk about some of the under pinnings of the technologies we’re using as part of our Maven work. Why we selected the technologes and some of the current work that’s happening.

- [Guice][guice]
- [From Plexus to Guice (#1): Why Guice?][plexus2guice1]
- [From Plexus to Guice (#2): The Guice/Plexus Bridge and Custom Bean Injection][plexus2guice2]
- [From Plexus to Guice (#3): Creating a Guice Bean Extension Layer][plexus2guice3]
- [Peaberry][peaberry]
- [Apache Shiro][shiro]
- [Enunciate][enunciate]

### Maven

There are several develops going on in the various Maven projects. Maven 3.x is on the way, but we have some very interesting work happing with OSGi within our Tycho project. The Flexmojos project and NAR (the C/++ framework for Maven) are also popular.

#### Tycho

- [Tycho Site][tycho]
- [Tycho @ Github][1]
- [Tycho/PDE Integration][2]
- [P2 Site][p2]

#### Flexmojos
- [Flexmojos Site][flexmojos]

#### NAR
- [NAR Site][nar]
- [NAR @ Github][11]

### M2Eclipse

The primary IDE integration we work on at Sonatype. The most important thing to talk about in M2Eclipse is the configuration framework.

- [M2Eclipse Site][m2e]

### Hudson

Most of the work we’ve been doing on Hudson is still not really good enough for public consumption but we’re testing the changes we’re making on the Sonatype grid.

[Hudson Site][hudson]

### Nexus
- [Nexus Site][nexus]
- [Nexus: Improving Maven Central and Supporting the Maven Ecosystem][4]
- [Selecting OSS Software: 10 Questions Answered for Sonatype Nexus][5]
- [OSS Repository Hosting][ossrepohosting]
- [OSGi Central][osgicentral]
- Ruby Central (We’re working on making that publicly available

### Proviso

Proviso is not publicly released yet, but Alin and I have been working together to get our provisioning framework ready for a public release.

### Git

We are starting to use Git heavily and soon likely exclusively. We are helping out on the EGit, and JGit projects at Eclipse and we’re trying to put a little Git server together based on JGit, MINA, and Apache Shiro.

- [JGit Site][jgit]
- [EGit Site][egit]
- [Tycho building EGit/JGit][jgitbuilds]
- [SShJGit @ Github][3]

### Maven Extensions

I’ll chat about these in the talk.

- [Polyglot Maven Site][pmaven]
- [Polyglot Maven @ Github][6]
- [Maven Shell][mshell]
- [Maven Shell @ Github][7]

I’ll likely keep adding to the entry leading up the talk, but I thought I would get the ball rolling!

[plexus2guice1]: http://www.sonatype.com/people/2010/01/from-plexus-to-guice-1-why-guice/
[plexus2guice2]: http://www.sonatype.com/people/2010/01/from-plexus-to-guice-2-the-guiceplexus-bridge-and-custom-bean-injection/
[plexus2guice3]: http://www.sonatype.com/people/2010/01/from-plexus-to-guice-3-creating-a-guice-bean-extension-layer/
[peaberry]: http://code.google.com/p/peaberry/
[enunciate]: http://enunciate.codehaus.org/
[shiro]: http://incubator.apache.org/shiro/
[guice]: http://code.google.com/p/google-guice/
[tycho]: http://tycho.sonatype.org/
[hudson]: https://hudson.dev.java.net/
[pmaven]: http://polyglot.sonatype.org/
[mshell]: http://mvnsh.sonatype.org
[egit]: http://www.eclipse.org/egit/
[jgit]: http://www.eclipse.org/jgit/
[nar]: http://duns.github.com/maven-nar-plugin/
[flexmojos]: http://flexmojos.sonatype.org/
[m2e]: http://m2eclipse.sonatype.org/
[p2]: http://wiki.eclipse.org/Equinox_p2
[jgitbuilds]: http://aniszczyk.org/2010/01/25/egit-and-jgit-builds-available/
[nexus]: http://nexus.sonatype.org
[ossrepohosting]: http://nexus.sonatype.org/oss-repository-hosting.html
[osgicentral]: http://bundles.sonatype.org/index.html#welcome

[1]: http://github.com/sonatype/sonatype-tycho
[2]: http://github.com/sonatype/m2eclipse-tycho
[3]: http://github.com/sonatype/sshjgit
[4]: http://www.sonatype.com/people/2010/01/nexus-oss-ecosystem/
[5]: http://www.sonatype.com/people/2010/01/10-questions/
[6]: http://github.com/sonatype/polyglot-maven
[7]: https://github.com/sonatype/mvnsh
[10]: http://www.jfokus.se
[11]: http://github.com/sonatype/maven-nar-plugin