You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2008/11/11 07:22:59 UTC
svn commit: r712957 - in
/maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin: c pom.xml
src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java
Author: ogusakov
Date: Mon Nov 10 22:22:59 2008
New Revision: 712957
URL: http://svn.apache.org/viewvc?rev=712957&view=rev
Log:
maven part works
Modified:
maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/c
maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/pom.xml
maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java
Modified: maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/c
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/c?rev=712957&r1=712956&r2=712957&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/c (original)
+++ maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/c Mon Nov 10 22:22:59 2008
@@ -1 +1 @@
-mvn org.sonatype.maven.plugins:mercury-compare-maven-plugin:1.0:deps -DtargetDir=./target/deps -DlistFile=./list.txt
+mvn org.sonatype.maven.plugins:mercury-compare-maven-plugin:1.0:deps -DtargetDir=target/deps -DlistFile=list.txt
Modified: maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/pom.xml?rev=712957&r1=712956&r2=712957&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/pom.xml (original)
+++ maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/pom.xml Mon Nov 10 22:22:59 2008
@@ -36,6 +36,7 @@
<properties>
<mercury.version>1.0.0-alpha-2-SNAPSHOT</mercury.version>
+ <maven.version>2.0.9</maven.version>
</properties>
<dependencies>
@@ -43,13 +44,13 @@
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
- <version>2.0.9</version>
+ <version>${maven.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
- <version>2.0.9</version>
+ <version>${maven.version}</version>
</dependency>
<dependency>
Modified: maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java?rev=712957&r1=712956&r2=712957&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java (original)
+++ maven/mercury/trunk/mercury-maven/mercury-compare-maven-plugin/src/main/java/org/sonatype/maven/plugins/mercury/compare/MercuryDepsMojo.java Mon Nov 10 22:22:59 2008
@@ -41,7 +41,6 @@
public class MercuryDepsMojo
extends AbstractMojo
-implements Initializable
{
private static Log _log;
//----------------------------------------------------------------
@@ -71,6 +70,12 @@
* @component
*/
private ArtifactMetadataSource metadataSource;
+
+ /**
+ *
+ * @component
+ */
+ private MavenProjectBuilder projectBuilder;
/**
*
* @parameter expression="${localRepository}"
@@ -81,23 +86,11 @@
* @parameter expression="${project.remoteArtifactRepositories}"
*/
private List remoteRepositories;
-//
-// /**
-// * @parameter expression="${project}"
-// */
-// MavenProject _project;
-//
-// /**
-// * @component
-// */
-// Prompter _prompter;
PlexusContainer plexus;
RuntimeDependencyResolver resolver;
- MavenProjectBuilder projectBuilder;
-
File target;
//----------------------------------------------------------------
@@ -108,6 +101,20 @@
if( _session == null )
throw new MojoExecutionException("session not injected");
+ if( projectBuilder == null )
+ throw new MojoExecutionException("project builder is null");
+
+ _log = getLog();
+
+ PluginLog.setLog( _log );
+
+ resolver = new RuntimeDependencyResolver( artifactFactory
+ , artifactResolver
+ , metadataSource
+ , localRepository
+ , remoteRepositories
+ );
+
if( targetDir == null )
throw new MojoExecutionException("target dir not specified");
@@ -127,11 +134,11 @@
throw new MojoExecutionException("list file not specified");
File list = new File( listFile );
-
- if( list.exists() )
- throw new MojoExecutionException( "list file "+listFile+" does not exist" );
-
try {
+
+ if( !list.exists() )
+ throw new MojoExecutionException( "list file "+list.getCanonicalPath()+" does not exist" );
+
BufferedReader r = new BufferedReader( new FileReader(list) );
for( String line = r.readLine(); line != null; line = r.readLine() )
@@ -161,53 +168,21 @@
throw new MojoExecutionException( e.getMessage() );
}
}
-
- //------------------------------------------------------------------------
- public void initialize()
- throws InitializationException
- {
- _log = getLog();
-
- PluginLog.setLog( _log );
-
- if( _session == null )
- throw new InitializationException( "Maven session is not injected by the container ");
-
- plexus = _session.getContainer();
-
- resolver = new RuntimeDependencyResolver( artifactFactory
- , artifactResolver
- , metadataSource
- , localRepository
- , remoteRepositories
- );
-
- try
- {
- projectBuilder = (MavenProjectBuilder)plexus.lookup( MavenProjectBuilder.ROLE );
-
- if( projectBuilder == null )
- throw new Exception("project builder is null");
- }
- catch( Exception e )
- {
- throw new InitializationException(e.getMessage());
- }
- }
-
+ //-----------------------------------------------------------------------------------------------------------------
private void saveDependencies( String groupId, String artifactId, String version, String type )
throws ArtifactResolutionException, ArtifactNotFoundException, ProjectBuildingException, InvalidDependencyVersionException, IOException
{
+
Set<Artifact> deps = (Set<Artifact>)resolver.transitivelyResolvePomDependencies( projectBuilder , groupId, artifactId, version, false );
File fout = new File( target, groupId+"-"+artifactId+"-"+version+"-"+type+".deps" );
+
+ _log.info( fout.getCanonicalPath() );
BufferedWriter w = new BufferedWriter( new FileWriter(fout) );
try
{
- w.write( groupId+":"+artifactId+":"+version+"::"+type );
-
if( deps == null || deps.isEmpty() )
return;
@@ -218,7 +193,12 @@
if( cl == null )
cl = "";
- w.write( a.getGroupId()+":"+a.getArtifactId()+":"+a.getVersion()+":"+cl+":"+a.getType() );
+ String sc = a.getScope();
+
+ if( sc == null )
+ sc = "compile";
+
+ w.write( a.getGroupId()+":"+a.getArtifactId()+":"+a.getVersion()+":"+cl+":"+a.getType()+":"+sc+"\n" );
}
}
finally
@@ -227,6 +207,6 @@
try { w.flush(); w.close(); } catch( Exception e ) { _log.error( e.getMessage() ); }
}
}
- //----------------------------------------------------------------
- //----------------------------------------------------------------
+ //-----------------------------------------------------------------------------------------------------------------
+ //-----------------------------------------------------------------------------------------------------------------
}