You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2007/03/12 04:28:11 UTC
svn commit: r517089 - in /maven/plugins/trunk/maven-dependency-plugin/src:
it/mdep-66/ it/mdep-66/pom.xml
main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java
Author: brianf
Date: Sun Mar 11 20:28:10 2007
New Revision: 517089
URL: http://svn.apache.org/viewvc?view=rev&rev=517089
Log:
MDEP-66 - implemented dependency:sources
Added:
maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/
maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/pom.xml
Modified:
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java
Added: maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/pom.xml?view=auto&rev=517089
==============================================================================
--- maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/pom.xml (added)
+++ maven/plugins/trunk/maven-dependency-plugin/src/it/mdep-66/pom.xml Sun Mar 11 20:28:10 2007
@@ -0,0 +1,53 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>Copy Dependencies IT</name>
+ <groupId>org.apache.maven.plugins.maven-dependency-plugin-it</groupId>
+ <artifactId>mdep-66-it</artifactId>
+ <version>1</version>
+ <packaging>jar</packaging>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>1.6.5</version>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <defaultGoal>generate-sources</defaultGoal>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>compile-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>sources</goal>
+ </goals>
+ <configuration>
+ <includeScope>compile</includeScope>
+ </configuration>
+ </execution>
+ <execution>
+ <id>test-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>sources</goal>
+ </goals>
+ <configuration>
+ <includeScope>test</includeScope>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java?view=diff&rev=517089&r1=517088&r2=517089
==============================================================================
--- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java (original)
+++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java Sun Mar 11 20:28:10 2007
@@ -25,7 +25,10 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.dependency.AbstractResolveMojo;
+import org.apache.maven.plugin.dependency.utils.DependencyStatusSets;
import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter;
+import org.apache.maven.plugin.dependency.utils.filters.ResolveFileFilter;
+import org.apache.maven.plugin.dependency.utils.markers.SourcesFileMarkerHandler;
/**
* Goal that resolves the project source dependencies from the repository.
@@ -34,45 +37,21 @@
* @phase generate-sources
* @requiresDependencyResolution test
* @author brianf
- * @since 2.0
+ * @since 2.0-alpha2
*/
public class ResolveDependencySourcesMojo
extends AbstractResolveMojo
{
- // private static final String SOURCE_TYPE = "java-source";
+ private static final String SOURCE_TYPE = "java-source";
- // private static final String SOURCE_CLASSIFIER = "sources";
+ private static final String SOURCE_CLASSIFIER = "sources";
/**
- * If the plugin should exclude Transitive dependencies.
- *
- * @parameter expression="${excludeTransitive}" default-value="false"
- */
- private boolean excludeTransitive;
-
- /**
- * The mojo compares artifact groupIds against this string using
- * string.startsWith to see if they should be resolved.
- *
- * @parameter expression="${groupId}" default-value=""
+ * Only used to store results for integration test validation
*/
- private String groupId;
-
- /**
- * Directory to store flag files
- *
- * @parameter expression="${dependency.resolveMarkersDirectory}"
- * default-value="${project.build.directory}/dependency-maven-plugin-markers"
- * @required
- */
- // private File markersDirectory;
- /**
- * Use Marker Files
- *
- * @parameter expression="${dependency.useMarkers}" default-value="false"
- */
- // private boolean useMarkers;
+ DependencyStatusSets results;
+
/**
* Main entry into mojo. Gets the list of dependencies and iterates through
* resolving the source jars.
@@ -84,34 +63,36 @@
public void execute()
throws MojoExecutionException
{
- // Loop through all artifacts
- Set artifacts;
- if ( !excludeTransitive )
+ this.classifier = SOURCE_CLASSIFIER;
+ this.type = SOURCE_TYPE;
+ // get sets of dependencies
+ results = this.getDependencySets( false );
+
+ SourcesFileMarkerHandler handler = new SourcesFileMarkerHandler(this.markersDirectory);
+ handler.setResolved( true );
+
+ Iterator iter = results.getResolvedDependencies().iterator();
+ while (iter.hasNext())
{
- artifacts = project.getArtifacts();
+ Artifact artifact = (Artifact) iter.next();
+ handler.setArtifact( artifact );
+ handler.setMarker();
}
- else
- {
- artifacts = project.getDependencyArtifacts();
- }
-
- if ( groupId != null && !"".equals( groupId ) )
+
+ handler.setResolved( false );
+ iter = results.getUnResolvedDependencies().iterator();
+ while (iter.hasNext())
{
- Iterator iter = artifacts.iterator();
- while ( iter.hasNext() )
- {
- Artifact artifact = (Artifact) iter.next();
- if ( !artifact.getGroupId().startsWith( groupId ) )
- {
- iter.remove();
- }
- }
+ Artifact artifact = (Artifact) iter.next();
+ handler.setArtifact( artifact );
+ handler.setMarker();
}
+ results.logStatus( getLog(), outputAbsoluteArtifactFilename, false );
}
protected ArtifactsFilter getMarkedArtifactFilter()
{
- return null;
+ return new ResolveFileFilter( new SourcesFileMarkerHandler( this.markersDirectory ) );
}
}