+1 for 3.1 On 2012-09-07 22:19, Anders Hammar wrote: > I know. But there wasn't much visible change in v3.0 either. And I'm > thinking that it would be easier to communicate a dependency on Maven > 3.1+ than 3.0.5+ if some component utilizes the JSR330 support. > > Version numbers are cheap. Why not bump and get some attention? :-) > > /Anders > > On Fri, Sep 7, 2012 at 10:03 PM, Jason van Zyl <ja...@tesla.io> wrote: >> There are no visible user changes, so I don't think so. There aren't even >> any changes to integrators unless they want to use take advantage of the >> changes. >> >> On Sep 7, 2012, at 4:01 PM, Anders Hammar wrote: >> >>> Maybe this even should bump the version to v3.1? >>> >>> /Anders >>> >>> On Fri, Sep 7, 2012 at 5:37 PM, Olivier Lamy <ol...@apache.org> wrote: >>>> Maybe I miss something but we don't have any associated jira entry for >>>> reference in release notes neither core it test. >>>> Do you have a bit of time for that ? >>>> >>>> Thanks >>>> -- >>>> Olivier >>>> 2012/9/3 <jvan...@apache.org>: >>>>> Author: jvanzyl >>>>> Date: Mon Sep 3 01:07:31 2012 >>>>> New Revision: 1380105 >>>>> >>>>> URL: http://svn.apache.org/viewvc?rev=1380105&view=rev >>>>> Log: >>>>> o Enabled support and discovery of JSR-330 components >>>>> >>>>> o Added Slf4j logger factory to support generic JSR-330 logging >>>>> >>>>> o Exported Guice package for components that access Guice (or better it's >>>>> injector) directly >>>>> >>>>> Widen export of Guice packages (not ideal, need to look into ways to >>>>> avoid this) >>>>> >>>>> o use specific exports >>>>> >>>>> o for now we will attempt to hide all of Guice in plugin realms and we'll >>>>> do a bit of testing >>>>> >>>>> closes #3 >>>>> >>>>> Added: >>>>> >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLogger.java >>>>> >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLoggerFactory.java >>>>> Modified: >>>>> maven/maven-3/trunk/apache-maven/pom.xml >>>>> >>>>> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java >>>>> maven/maven-3/trunk/maven-embedder/pom.xml >>>>> >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java >>>>> maven/maven-3/trunk/pom.xml >>>>> >>>>> Modified: maven/maven-3/trunk/apache-maven/pom.xml >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/apache-maven/pom.xml?rev=1380105&r1=1380104&r2=1380105&view=diff >>>>> ============================================================================== >>>>> --- maven/maven-3/trunk/apache-maven/pom.xml (original) >>>>> +++ maven/maven-3/trunk/apache-maven/pom.xml Mon Sep 3 01:07:31 2012 >>>>> @@ -83,6 +83,10 @@ >>>>> <groupId>org.sonatype.aether</groupId> >>>>> <artifactId>aether-connector-wagon</artifactId> >>>>> </dependency> >>>>> + <dependency> >>>>> + <groupId>org.slf4j</groupId> >>>>> + <artifactId>slf4j-nop</artifactId> >>>>> + </dependency> >>>>> </dependencies> >>>>> >>>>> <build> >>>>> >>>>> Modified: >>>>> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java?rev=1380105&r1=1380104&r2=1380105&view=diff >>>>> ============================================================================== >>>>> --- >>>>> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java >>>>> (original) >>>>> +++ >>>>> maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java >>>>> Mon Sep 3 01:07:31 2012 >>>>> @@ -198,6 +198,26 @@ public class DefaultClassRealmManager >>>>> imports.put( "org.codehaus.plexus.util.xml.pull.XmlPullParser", >>>>> coreRealm ); >>>>> imports.put( >>>>> "org.codehaus.plexus.util.xml.pull.XmlPullParserException", coreRealm ); >>>>> imports.put( "org.codehaus.plexus.util.xml.pull.XmlSerializer", >>>>> coreRealm ); >>>>> + >>>>> + // javax.inject, sisu-inject (JSR-330) >>>>> + imports.put( "javax.inject.*", coreRealm ); >>>>> + imports.put( "javax.enterprise.inject.*", coreRealm ); >>>>> + imports.put( "org.sonatype.inject.*", coreRealm ); >>>>> + imports.put( "org.slf4j.*", coreRealm ); >>>>> + >>>>> + // com.google >>>>> + // >>>>> + // We may potentially want to export these, but right now I'm >>>>> not sure that anything Guice specific needs >>>>> + // to be made available to plugin authors. If we find people are >>>>> getting fancy and want to take advantage >>>>> + // of Guice specifics we can expose that later. Really some >>>>> testing needs to be done to see full hiding >>>>> + // of Guice has any impact on what we may categorize as a >>>>> standard JSR-330 based Tesla/Maven plugin. >>>>> + // >>>>> + // imports.put( "com.google.inject.*", coreRealm ); >>>>> + // imports.put( "com.google.inject.binder.*", coreRealm ); >>>>> + // imports.put( "com.google.inject.matcher.*", coreRealm ); >>>>> + // imports.put( "com.google.inject.name.*", coreRealm ); >>>>> + // imports.put( "com.google.inject.spi.*", coreRealm ); >>>>> + // imports.put( "com.google.inject.util.*", coreRealm ); >>>>> } >>>>> >>>>> /** >>>>> >>>>> Modified: maven/maven-3/trunk/maven-embedder/pom.xml >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/pom.xml?rev=1380105&r1=1380104&r2=1380105&view=diff >>>>> ============================================================================== >>>>> --- maven/maven-3/trunk/maven-embedder/pom.xml (original) >>>>> +++ maven/maven-3/trunk/maven-embedder/pom.xml Mon Sep 3 01:07:31 2012 >>>>> @@ -70,6 +70,10 @@ >>>>> <groupId>org.sonatype.plexus</groupId> >>>>> <artifactId>plexus-cipher</artifactId> >>>>> </dependency> >>>>> + <dependency> >>>>> + <groupId>org.slf4j</groupId> >>>>> + <artifactId>slf4j-api</artifactId> >>>>> + </dependency> >>>>> <!-- CLI --> >>>>> <dependency> >>>>> <groupId>commons-cli</groupId> >>>>> >>>>> Modified: >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java?rev=1380105&r1=1380104&r2=1380105&view=diff >>>>> ============================================================================== >>>>> --- >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java >>>>> (original) >>>>> +++ >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java >>>>> Mon Sep 3 01:07:31 2012 >>>>> @@ -59,12 +59,14 @@ import org.apache.maven.settings.buildin >>>>> import org.codehaus.plexus.ContainerConfiguration; >>>>> import org.codehaus.plexus.DefaultContainerConfiguration; >>>>> import org.codehaus.plexus.DefaultPlexusContainer; >>>>> +import org.codehaus.plexus.PlexusConstants; >>>>> import org.codehaus.plexus.PlexusContainer; >>>>> import org.codehaus.plexus.classworlds.ClassWorld; >>>>> import org.codehaus.plexus.classworlds.realm.ClassRealm; >>>>> import >>>>> org.codehaus.plexus.component.repository.exception.ComponentLookupException; >>>>> import org.codehaus.plexus.logging.Logger; >>>>> import org.codehaus.plexus.util.StringUtils; >>>>> +import org.slf4j.ILoggerFactory; >>>>> import org.sonatype.aether.transfer.TransferListener; >>>>> import org.sonatype.plexus.components.cipher.DefaultPlexusCipher; >>>>> import org.sonatype.plexus.components.sec.dispatcher.DefaultSecDispatcher; >>>>> @@ -72,6 +74,8 @@ import org.sonatype.plexus.components.se >>>>> import org.sonatype.plexus.components.sec.dispatcher.SecUtil; >>>>> import >>>>> org.sonatype.plexus.components.sec.dispatcher.model.SettingsSecurity; >>>>> >>>>> +import com.google.inject.AbstractModule; >>>>> + >>>>> // TODO: push all common bits back to plexus cli and prepare for >>>>> transition to Guice. We don't need 50 ways to make CLIs >>>>> >>>>> /** >>>>> @@ -372,17 +376,29 @@ public class MavenCli >>>>> { >>>>> logger = setupLogger( cliRequest ); >>>>> >>>>> + final MavenLoggerManager loggerManager = new >>>>> MavenLoggerManager( logger ) ; >>>>> + >>>>> ContainerConfiguration cc = new >>>>> DefaultContainerConfiguration() >>>>> .setClassWorld( cliRequest.classWorld ) >>>>> .setRealm( setupContainerRealm( cliRequest ) ) >>>>> + .setClassPathScanning( PlexusConstants.SCANNING_INDEX ) >>>>> + .setAutoWiring( true ) >>>>> .setName( "maven" ); >>>>> >>>>> - container = new DefaultPlexusContainer( cc ); >>>>> + container = new DefaultPlexusContainer( cc, new >>>>> AbstractModule() >>>>> + { >>>>> + >>>>> + protected void configure() >>>>> + { >>>>> + bind( ILoggerFactory.class ).toInstance( new >>>>> PlexusLoggerFactory( loggerManager ) ); >>>>> + } >>>>> + >>>>> + } ); >>>>> >>>>> // NOTE: To avoid inconsistencies, we'll use the TCCL >>>>> exclusively for lookups >>>>> container.setLookupRealm( null ); >>>>> >>>>> - container.setLoggerManager( new MavenLoggerManager( logger ) >>>>> ); >>>>> + container.setLoggerManager( loggerManager ); >>>>> >>>>> customizeContainer( container ); >>>>> >>>>> >>>>> Added: >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLogger.java >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLogger.java?rev=1380105&view=auto >>>>> ============================================================================== >>>>> --- >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLogger.java >>>>> (added) >>>>> +++ >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLogger.java >>>>> Mon Sep 3 01:07:31 2012 >>>>> @@ -0,0 +1,358 @@ >>>>> +package org.apache.maven.cli; >>>>> + >>>>> +/* >>>>> + * Licensed to the Apache Software Foundation (ASF) under one >>>>> + * or more contributor license agreements. See the NOTICE file >>>>> + * distributed with this work for additional information >>>>> + * regarding copyright ownership. The ASF licenses this file >>>>> + * to you under the Apache License, Version 2.0 (the >>>>> + * "License"); you may not use this file except in compliance >>>>> + * with the License. You may obtain a copy of the License at >>>>> + * >>>>> + * http://www.apache.org/licenses/LICENSE-2.0 >>>>> + * >>>>> + * Unless required by applicable law or agreed to in writing, >>>>> + * software distributed under the License is distributed on an >>>>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >>>>> + * KIND, either express or implied. See the License for the >>>>> + * specific language governing permissions and limitations >>>>> + * under the License. >>>>> + */ >>>>> + >>>>> +import org.slf4j.Logger; >>>>> +import org.slf4j.Marker; >>>>> +import org.slf4j.helpers.FormattingTuple; >>>>> +import org.slf4j.helpers.MessageFormatter; >>>>> + >>>>> +/** >>>>> + * A Slf4j logger bridged onto a Plexus logger. >>>>> + */ >>>>> +class PlexusLogger >>>>> + implements Logger >>>>> +{ >>>>> + >>>>> + private final org.codehaus.plexus.logging.Logger logger; >>>>> + >>>>> + public PlexusLogger( org.codehaus.plexus.logging.Logger logger ) >>>>> + { >>>>> + this.logger = logger; >>>>> + } >>>>> + >>>>> + public String getName() >>>>> + { >>>>> + return logger.getName(); >>>>> + } >>>>> + >>>>> + public boolean isTraceEnabled() >>>>> + { >>>>> + return isDebugEnabled(); >>>>> + } >>>>> + >>>>> + public void trace( String msg ) >>>>> + { >>>>> + debug( msg ); >>>>> + } >>>>> + >>>>> + public void trace( String format, Object arg ) >>>>> + { >>>>> + debug( format, arg ); >>>>> + } >>>>> + >>>>> + public void trace( String format, Object arg1, Object arg2 ) >>>>> + { >>>>> + debug( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void trace( String format, Object[] argArray ) >>>>> + { >>>>> + debug( format, argArray ); >>>>> + } >>>>> + >>>>> + public void trace( String msg, Throwable t ) >>>>> + { >>>>> + debug( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isTraceEnabled( Marker marker ) >>>>> + { >>>>> + return isTraceEnabled(); >>>>> + } >>>>> + >>>>> + public void trace( Marker marker, String msg ) >>>>> + { >>>>> + trace( msg ); >>>>> + } >>>>> + >>>>> + public void trace( Marker marker, String format, Object arg ) >>>>> + { >>>>> + trace( format, arg ); >>>>> + } >>>>> + >>>>> + public void trace( Marker marker, String format, Object arg1, Object >>>>> arg2 ) >>>>> + { >>>>> + trace( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void trace( Marker marker, String format, Object[] argArray ) >>>>> + { >>>>> + trace( format, argArray ); >>>>> + } >>>>> + >>>>> + public void trace( Marker marker, String msg, Throwable t ) >>>>> + { >>>>> + trace( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isDebugEnabled() >>>>> + { >>>>> + return logger.isDebugEnabled(); >>>>> + } >>>>> + >>>>> + public void debug( String msg ) >>>>> + { >>>>> + logger.debug( msg ); >>>>> + } >>>>> + >>>>> + public void debug( String format, Object arg ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg ); >>>>> + logger.debug( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void debug( String format, Object arg1, Object arg2 ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg1, arg2 >>>>> ); >>>>> + logger.debug( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void debug( String format, Object[] argArray ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.arrayFormat( format, >>>>> argArray ); >>>>> + logger.debug( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void debug( String msg, Throwable t ) >>>>> + { >>>>> + logger.debug( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isDebugEnabled( Marker marker ) >>>>> + { >>>>> + return isDebugEnabled(); >>>>> + } >>>>> + >>>>> + public void debug( Marker marker, String msg ) >>>>> + { >>>>> + debug( msg ); >>>>> + } >>>>> + >>>>> + public void debug( Marker marker, String format, Object arg ) >>>>> + { >>>>> + debug( format, arg ); >>>>> + } >>>>> + >>>>> + public void debug( Marker marker, String format, Object arg1, Object >>>>> arg2 ) >>>>> + { >>>>> + debug( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void debug( Marker marker, String format, Object[] argArray ) >>>>> + { >>>>> + debug( format, argArray ); >>>>> + } >>>>> + >>>>> + public void debug( Marker marker, String msg, Throwable t ) >>>>> + { >>>>> + debug( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isInfoEnabled() >>>>> + { >>>>> + return logger.isInfoEnabled(); >>>>> + } >>>>> + >>>>> + public void info( String msg ) >>>>> + { >>>>> + logger.info( msg ); >>>>> + } >>>>> + >>>>> + public void info( String format, Object arg ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg ); >>>>> + logger.info( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void info( String format, Object arg1, Object arg2 ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg1, arg2 >>>>> ); >>>>> + logger.info( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void info( String format, Object[] argArray ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.arrayFormat( format, >>>>> argArray ); >>>>> + logger.info( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void info( String msg, Throwable t ) >>>>> + { >>>>> + logger.info( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isInfoEnabled( Marker marker ) >>>>> + { >>>>> + return isInfoEnabled(); >>>>> + } >>>>> + >>>>> + public void info( Marker marker, String msg ) >>>>> + { >>>>> + info( msg ); >>>>> + } >>>>> + >>>>> + public void info( Marker marker, String format, Object arg ) >>>>> + { >>>>> + info( format, arg ); >>>>> + } >>>>> + >>>>> + public void info( Marker marker, String format, Object arg1, Object >>>>> arg2 ) >>>>> + { >>>>> + info( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void info( Marker marker, String format, Object[] argArray ) >>>>> + { >>>>> + info( format, argArray ); >>>>> + } >>>>> + >>>>> + public void info( Marker marker, String msg, Throwable t ) >>>>> + { >>>>> + info( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isWarnEnabled() >>>>> + { >>>>> + return logger.isWarnEnabled(); >>>>> + } >>>>> + >>>>> + public void warn( String msg ) >>>>> + { >>>>> + logger.warn( msg ); >>>>> + } >>>>> + >>>>> + public void warn( String format, Object arg ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg ); >>>>> + logger.warn( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void warn( String format, Object arg1, Object arg2 ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg1, arg2 >>>>> ); >>>>> + logger.warn( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void warn( String format, Object[] argArray ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.arrayFormat( format, >>>>> argArray ); >>>>> + logger.warn( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void warn( String msg, Throwable t ) >>>>> + { >>>>> + logger.warn( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isWarnEnabled( Marker marker ) >>>>> + { >>>>> + return isWarnEnabled(); >>>>> + } >>>>> + >>>>> + public void warn( Marker marker, String msg ) >>>>> + { >>>>> + warn( msg ); >>>>> + } >>>>> + >>>>> + public void warn( Marker marker, String format, Object arg ) >>>>> + { >>>>> + warn( format, arg ); >>>>> + } >>>>> + >>>>> + public void warn( Marker marker, String format, Object arg1, Object >>>>> arg2 ) >>>>> + { >>>>> + warn( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void warn( Marker marker, String format, Object[] argArray ) >>>>> + { >>>>> + warn( format, argArray ); >>>>> + } >>>>> + >>>>> + public void warn( Marker marker, String msg, Throwable t ) >>>>> + { >>>>> + warn( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isErrorEnabled() >>>>> + { >>>>> + return logger.isErrorEnabled(); >>>>> + } >>>>> + >>>>> + public void error( String msg ) >>>>> + { >>>>> + logger.error( msg ); >>>>> + } >>>>> + >>>>> + public void error( String format, Object arg ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg ); >>>>> + logger.error( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void error( String format, Object arg1, Object arg2 ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.format( format, arg1, arg2 >>>>> ); >>>>> + logger.error( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void error( String format, Object[] argArray ) >>>>> + { >>>>> + FormattingTuple ft = MessageFormatter.arrayFormat( format, >>>>> argArray ); >>>>> + logger.error( ft.getMessage(), ft.getThrowable() ); >>>>> + } >>>>> + >>>>> + public void error( String msg, Throwable t ) >>>>> + { >>>>> + logger.error( msg, t ); >>>>> + } >>>>> + >>>>> + public boolean isErrorEnabled( Marker marker ) >>>>> + { >>>>> + return isErrorEnabled(); >>>>> + } >>>>> + >>>>> + public void error( Marker marker, String msg ) >>>>> + { >>>>> + error( msg ); >>>>> + } >>>>> + >>>>> + public void error( Marker marker, String format, Object arg ) >>>>> + { >>>>> + error( format, arg ); >>>>> + } >>>>> + >>>>> + public void error( Marker marker, String format, Object arg1, Object >>>>> arg2 ) >>>>> + { >>>>> + error( format, arg1, arg2 ); >>>>> + } >>>>> + >>>>> + public void error( Marker marker, String format, Object[] argArray ) >>>>> + { >>>>> + error( format, argArray ); >>>>> + } >>>>> + >>>>> + public void error( Marker marker, String msg, Throwable t ) >>>>> + { >>>>> + error( msg, t ); >>>>> + } >>>>> + >>>>> +} >>>>> >>>>> Added: >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLoggerFactory.java >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLoggerFactory.java?rev=1380105&view=auto >>>>> ============================================================================== >>>>> --- >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLoggerFactory.java >>>>> (added) >>>>> +++ >>>>> maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/PlexusLoggerFactory.java >>>>> Mon Sep 3 01:07:31 2012 >>>>> @@ -0,0 +1,50 @@ >>>>> +package org.apache.maven.cli; >>>>> + >>>>> +/* >>>>> + * Licensed to the Apache Software Foundation (ASF) under one >>>>> + * or more contributor license agreements. See the NOTICE file >>>>> + * distributed with this work for additional information >>>>> + * regarding copyright ownership. The ASF licenses this file >>>>> + * to you under the Apache License, Version 2.0 (the >>>>> + * "License"); you may not use this file except in compliance >>>>> + * with the License. You may obtain a copy of the License at >>>>> + * >>>>> + * http://www.apache.org/licenses/LICENSE-2.0 >>>>> + * >>>>> + * Unless required by applicable law or agreed to in writing, >>>>> + * software distributed under the License is distributed on an >>>>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >>>>> + * KIND, either express or implied. See the License for the >>>>> + * specific language governing permissions and limitations >>>>> + * under the License. >>>>> + */ >>>>> + >>>>> +import org.codehaus.plexus.logging.LoggerManager; >>>>> +import org.slf4j.ILoggerFactory; >>>>> +import org.slf4j.Logger; >>>>> + >>>>> +/** >>>>> + * A Slf4j logger factory bridged onto a Plexus logger manager. >>>>> + */ >>>>> +public class PlexusLoggerFactory >>>>> + implements ILoggerFactory >>>>> +{ >>>>> + >>>>> + private LoggerManager loggerManager; >>>>> + >>>>> + public PlexusLoggerFactory( LoggerManager loggerManager ) >>>>> + { >>>>> + this.loggerManager = loggerManager; >>>>> + } >>>>> + >>>>> + public void setLoggerManager( LoggerManager loggerManager ) >>>>> + { >>>>> + this.loggerManager = loggerManager; >>>>> + } >>>>> + >>>>> + public Logger getLogger( String name ) >>>>> + { >>>>> + return new PlexusLogger( loggerManager.getLoggerForComponent( >>>>> name, null ) ); >>>>> + } >>>>> + >>>>> +} >>>>> >>>>> Modified: maven/maven-3/trunk/pom.xml >>>>> URL: >>>>> http://svn.apache.org/viewvc/maven/maven-3/trunk/pom.xml?rev=1380105&r1=1380104&r2=1380105&view=diff >>>>> ============================================================================== >>>>> --- maven/maven-3/trunk/pom.xml (original) >>>>> +++ maven/maven-3/trunk/pom.xml Mon Sep 3 01:07:31 2012 >>>>> @@ -56,6 +56,7 @@ >>>>> <modelloVersion>1.4.1</modelloVersion> >>>>> <jxpathVersion>1.3</jxpathVersion> >>>>> <aetherVersion>1.13.1</aetherVersion> >>>>> + <slf4jVersion>1.6.1</slf4jVersion> >>>>> >>>>> <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile> >>>>> <!-- Control the name of the distribution and information output by >>>>> mvn --> >>>>> <distributionId>apache-maven</distributionId> >>>>> @@ -203,6 +204,17 @@ >>>>> <artifactId>plexus-interpolation</artifactId> >>>>> <version>${plexusInterpolationVersion}</version> >>>>> </dependency> >>>>> + <dependency> >>>>> + <groupId>org.slf4j</groupId> >>>>> + <artifactId>slf4j-api</artifactId> >>>>> + <version>${slf4jVersion}</version> >>>>> + </dependency> >>>>> + <dependency> >>>>> + <groupId>org.slf4j</groupId> >>>>> + <artifactId>slf4j-nop</artifactId> >>>>> + <version>${slf4jVersion}</version> >>>>> + <scope>runtime</scope> >>>>> + </dependency> >>>>> <!-- Wagon --> >>>>> <dependency> >>>>> <groupId>org.apache.maven.wagon</groupId> >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Olivier Lamy >>>> Talend: http://coders.talend.com >>>> http://twitter.com/olamy | http://linkedin.com/in/olamy >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org >>>> For additional commands, e-mail: dev-h...@maven.apache.org >>>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org >>> For additional commands, e-mail: dev-h...@maven.apache.org >>> >> >> Thanks, >> >> Jason >> >> ---------------------------------------------------------- >> Jason van Zyl >> Founder & CTO, Sonatype >> Founder, Apache Maven >> http://twitter.com/jvanzyl >> --------------------------------------------------------- >> >> To do two things at once is to do neither. >> >> -- Publilius Syrus, Roman slave, first century B.C. >> >> >> >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org >
-- Dennis Lundberg --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org