Stuart, a couple of things re the below: 1) The first URL downloads spice-inject and the whole Guice. Question: was Guice extended for this compatibility layer? What actually is the compatibility layer? Is it just "spice" or the whole lot? If it's just "spice", could we avoid from build the whole Guice and have the dependencies downloaded from the net?
2) The second URL points to a Maven repository. You were talking of a replacement container (which I thought of as being classworlds). However I was looking for the source code. To summarise, I'd like to have the URLs only to the source code needed to build Maven 3 with the Guice bit. I understand that there is a compatibility layer, and I can build that (after knowing if I have to build the whole Guice as well with it). I understand that there is a replacement container (but I don't have a precise URL to the SVN code for it); I'd like to know if the Maven 3 trunk builds already on top of the above, or if I need another URL with Guice support, and if this case I'd like a precise URL for it. Thanks for your time. M. On Sun, 2010-06-06 at 16:40 +0800, Stuart McCulloch wrote: > On 6 June 2010 02:27, Jemos Infra <[email protected]> wrote: > > > Hi, > > > > Can somebody point me to the Maven 3 branch with Google guice? I > > undertsand that Google guice will replace Plexus classworlds, but the > > trunk still has Plexus in it. I'd like to have a look at what Maven 3 > > will look like when finished (from a code perspective). > > > > The idea is for Guice to replace the Plexus container > by using a compatibility layer to inject requirements > into components. (Plexus classworlds is more about > classloader isolation, which is orthogonal to injection > and may or may not be replaced in the near future) > > The Plexus container compatibility layer is here: > > http://svn.sonatype.org/spice/trunk/spice-inject > > Note that because this supports Plexus components > on top of Guice/JSR330 there's actually no changes > needed to Maven 3 to run it on top of Guice - that's > all handled by the compatibility layer, you can even > mix JSR330 and Plexus components/annotations. > > Below is the patch to build M3 with the replacement > container - note you'll need to build the spice-inject > project beforehand, unless you use the Sonatype > forge repository to get the latest snapshots: > > https://repository.sonatype.org/content/groups/forge > > Changing future plugins / Maven to use pure JSR330 > annotations is a separate discussion that will happen > on the dev list - first I need to write up our experience > at Sonatype with using a JSR330 component model* > so people have something concrete to discuss. > > [* apologies to the dev-list for delays in writing this up] > > HTH > > Index: maven-repository/pom.xml > =================================================================== > --- maven-repository/pom.xml (revision 951813) > +++ maven-repository/pom.xml (working copy) > @@ -39,8 +39,8 @@ > <artifactId>maven-compat</artifactId> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > <dependency> > <groupId>org.codehaus.plexus</groupId> > Index: apache-maven/pom.xml > =================================================================== > --- apache-maven/pom.xml (revision 951813) > +++ apache-maven/pom.xml (working copy) > @@ -43,8 +43,8 @@ > <artifactId>maven-compat</artifactId> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > <!-- CLI --> > <dependency> > Index: maven-compat/pom.xml > =================================================================== > --- maven-compat/pom.xml (revision 951813) > +++ maven-compat/pom.xml (working copy) > @@ -53,8 +53,8 @@ > <artifactId>plexus-interpolation</artifactId> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > <dependency> > <groupId>org.codehaus.plexus</groupId> > Index: maven-model-builder/pom.xml > =================================================================== > --- maven-model-builder/pom.xml (revision 951813) > +++ maven-model-builder/pom.xml (working copy) > @@ -41,8 +41,8 @@ > <artifactId>maven-model</artifactId> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > <scope>test</scope> > </dependency> > </dependencies> > Index: pom.xml > =================================================================== > --- pom.xml (revision 951813) > +++ pom.xml (working copy) > @@ -44,6 +44,7 @@ > <plexusVersion>1.5.4</plexusVersion> > <plexusInterpolationVersion>1.11</plexusInterpolationVersion> > <plexusUtilsVersion>2.0.4</plexusUtilsVersion> > + <spiceInjectVersion>1.2.1-SNAPSHOT</spiceInjectVersion> > <wagonVersion>1.0-beta-6</wagonVersion> > <securityDispatcherVersion>1.3</securityDispatcherVersion> > <cipherVersion>1.4</cipherVersion> > @@ -240,15 +241,9 @@ > <version>${plexusUtilsVersion}</version> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > - <version>${plexusVersion}</version> > - <exclusions> > - <exclusion> > - <groupId>junit</groupId> > - <artifactId>junit</artifactId> > - </exclusion> > - </exclusions> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > + <version>${spiceInjectVersion}</version> > </dependency> > <dependency> > <groupId>org.codehaus.plexus</groupId> > Index: maven-core/pom.xml > =================================================================== > --- maven-core/pom.xml (revision 951813) > +++ maven-core/pom.xml (working copy) > @@ -51,8 +51,8 @@ > </dependency> > <!-- Plexus --> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > <dependency> > <groupId>org.codehaus.plexus</groupId> > Index: maven-plugin-api/pom.xml > =================================================================== > --- maven-plugin-api/pom.xml (revision 951813) > +++ maven-plugin-api/pom.xml (working copy) > @@ -48,8 +48,8 @@ > </exclusions> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > </dependencies> > > Index: maven-embedder/pom.xml > =================================================================== > --- maven-embedder/pom.xml (revision 951813) > +++ maven-embedder/pom.xml (working copy) > @@ -54,8 +54,8 @@ > <artifactId>plexus-classworlds</artifactId> > </dependency> > <dependency> > - <groupId>org.codehaus.plexus</groupId> > - <artifactId>plexus-container-default</artifactId> > + <groupId>org.sonatype.spice</groupId> > + <artifactId>spice-inject-plexus</artifactId> > </dependency> > <dependency> > <groupId>org.codehaus.plexus</groupId> > > > > Thanks. > > > > M. > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
