Skip to content

Commit e12e94c

Browse files
committed
[FELIX-6073] Upgrade to Maven 3
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1854549 13f79535-47bb-0310-9956-ffa450edef68
1 parent 4857cb9 commit e12e94c

13 files changed

+140
-265
lines changed

tools/maven-bundle-plugin/pom.xml

+17-1
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,17 @@
192192
<dependency>
193193
<groupId>org.apache.maven</groupId>
194194
<artifactId>maven-core</artifactId>
195-
<version>2.2.0</version>
195+
<version>3.3.9</version>
196+
</dependency>
197+
<dependency>
198+
<groupId>org.apache.maven</groupId>
199+
<artifactId>maven-compat</artifactId>
200+
<version>3.3.9</version>
201+
</dependency>
202+
<dependency>
203+
<groupId>org.apache.maven.reporting</groupId>
204+
<artifactId>maven-reporting-api</artifactId>
205+
<version>3.0</version>
196206
</dependency>
197207
<dependency>
198208
<groupId>org.apache.maven</groupId>
@@ -236,6 +246,12 @@
236246
<version>1.1</version>
237247
<scope>test</scope>
238248
</dependency>
249+
<dependency>
250+
<groupId>org.eclipse.aether</groupId>
251+
<artifactId>aether-impl</artifactId>
252+
<version>1.1.0</version>
253+
<scope>tet</scope>
254+
</dependency>
239255
<dependency>
240256
<groupId>org.jdom</groupId>
241257
<artifactId>jdom</artifactId>

tools/maven-bundle-plugin/src/main/java/org/apache/felix/bundleplugin/AbstractDependencyFilter.java

+2-70
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import java.util.LinkedHashSet;
2525
import java.util.List;
2626
import java.util.Map;
27-
import java.util.Set;
2827
import java.util.regex.Pattern;
2928

3029
import org.apache.maven.artifact.Artifact;
@@ -35,13 +34,6 @@
3534
import aQute.bnd.header.Attrs;
3635
import aQute.bnd.header.OSGiHeader;
3736
import aQute.bnd.osgi.Instruction;
38-
import org.apache.maven.shared.dependency.graph.DependencyNode;
39-
import org.apache.maven.shared.dependency.graph.filter.ArtifactDependencyNodeFilter;
40-
import org.apache.maven.shared.dependency.graph.filter.DependencyNodeFilter;
41-
import org.apache.maven.shared.dependency.graph.traversal.BuildingDependencyNodeVisitor;
42-
import org.apache.maven.shared.dependency.graph.traversal.CollectingDependencyNodeVisitor;
43-
import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
44-
import org.apache.maven.shared.dependency.graph.traversal.FilteringDependencyNodeVisitor;
4537

4638

4739
/**
@@ -54,19 +46,14 @@ public abstract class AbstractDependencyFilter
5446
private static final Pattern MISSING_KEY_PATTERN = Pattern.compile( "(^|,)\\p{Blank}*(!)?\\p{Blank}*([a-zA-Z]+=)" );
5547
private static final String PLACEHOLDER = "$$PLACEHOLDER$$";
5648

57-
/**
58-
* Dependency Graph.
59-
*/
60-
private final DependencyNode m_dependencyGraph;
6149
/**
6250
* Dependency artifacts.
6351
*/
6452
private final Collection<Artifact> m_dependencyArtifacts;
6553

6654

67-
public AbstractDependencyFilter( DependencyNode dependencyGraph, Collection<Artifact> dependencyArtifacts )
55+
public AbstractDependencyFilter( Collection<Artifact> dependencyArtifacts )
6856
{
69-
m_dependencyGraph = dependencyGraph;
7057
m_dependencyArtifacts = dependencyArtifacts;
7158
}
7259

@@ -107,27 +94,6 @@ boolean matches( String text )
10794
}
10895
}
10996

110-
private static class TrimmingDependencyNodeFilter implements DependencyNodeFilter
111-
{
112-
private DependencyNodeFilter dependencyNodeFilter;
113-
114-
public TrimmingDependencyNodeFilter( DependencyNodeFilter dependencyNodeFilter )
115-
{
116-
this.dependencyNodeFilter = dependencyNodeFilter;
117-
}
118-
119-
public boolean accept( DependencyNode node )
120-
{
121-
boolean accepted = dependencyNodeFilter.accept( node );
122-
if( !accepted )
123-
{
124-
List<DependencyNode> children = node.getChildren();
125-
children.clear();
126-
}
127-
return accepted;
128-
}
129-
}
130-
13197
protected final void processInstructions( String header ) throws MojoExecutionException
13298
{
13399
Map<String,Attrs> instructions = OSGiHeader.parseHeader( MISSING_KEY_PATTERN.matcher( header ).replaceAll( "$1$2*;$3" ) );
@@ -297,40 +263,6 @@ else if ( "inline".equals( attr.getKey() ) )
297263

298264
private void filteredDependencies( final ArtifactFilter artifactFilter, Collection<Artifact> filteredDependencies )
299265
{
300-
CollectingDependencyNodeVisitor collectingDependencyNodeVisitor = new CollectingDependencyNodeVisitor();
301-
final Artifact rootArtifact = m_dependencyGraph.getArtifact();
302-
ArtifactFilter filter = new ArtifactFilter()
303-
{
304-
305-
306-
public boolean include( Artifact artifact )
307-
{
308-
return artifact.equals( rootArtifact ) || artifactFilter.include( artifact );
309-
}
310-
311-
312-
};
313-
DependencyNodeFilter dependencyNodeFilter = new ArtifactDependencyNodeFilter( filter );
314-
dependencyNodeFilter = new TrimmingDependencyNodeFilter( dependencyNodeFilter );
315-
DependencyNodeVisitor dependencyNodeVisitor =
316-
new FilteringDependencyNodeVisitor( collectingDependencyNodeVisitor, dependencyNodeFilter );
317-
dependencyNodeVisitor = new BuildingDependencyNodeVisitor( dependencyNodeVisitor );
318-
m_dependencyGraph.accept( dependencyNodeVisitor );
319-
List<DependencyNode> dependencyNodes = collectingDependencyNodeVisitor.getNodes();
320-
Set<String> ids = new LinkedHashSet<String>( dependencyNodes.size() );
321-
for( DependencyNode dependencyNode : dependencyNodes ) {
322-
Artifact artifact = dependencyNode.getArtifact();
323-
String id = artifact.getId();
324-
ids.add(id);
325-
}
326-
for (Iterator<Artifact> iterator = filteredDependencies.iterator(); iterator.hasNext();)
327-
{
328-
Artifact artifact = iterator.next();
329-
String id = artifact.getId();
330-
if (!ids.contains(id))
331-
{
332-
iterator.remove();
333-
}
334-
}
266+
filteredDependencies.removeIf( artifact -> !artifactFilter.include( artifact ) );
335267
}
336268
}

tools/maven-bundle-plugin/src/main/java/org/apache/felix/bundleplugin/AntPlugin.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import org.apache.maven.plugin.MojoExecutionException;
2929
import org.apache.maven.plugins.annotations.Mojo;
3030
import org.apache.maven.plugins.annotations.ResolutionScope;
31-
import org.apache.maven.project.MavenProject;
3231
import org.apache.maven.shared.dependency.graph.DependencyNode;
3332
import org.codehaus.plexus.util.FileUtils;
3433
import org.codehaus.plexus.util.IOUtil;
@@ -50,7 +49,7 @@ public class AntPlugin extends BundlePlugin
5049

5150

5251
@Override
53-
protected void execute( MavenProject currentProject, DependencyNode dependencyGraph, Map<String, String> originalInstructions, Properties properties,
52+
protected void execute( Map<String, String> originalInstructions,
5453
Jar[] classpath ) throws MojoExecutionException
5554
{
5655
final String artifactId = getProject().getArtifactId();
@@ -59,8 +58,8 @@ protected void execute( MavenProject currentProject, DependencyNode dependencyGr
5958
try
6059
{
6160
// assemble bundle as usual, but don't save it - this way we have all the instructions we need
62-
Builder builder = buildOSGiBundle( currentProject,
63-
dependencyGraph, originalInstructions, properties, classpath );
61+
Builder builder = buildOSGiBundle(project,
62+
originalInstructions, classpath );
6463
Properties bndProperties = builder.getProperties();
6564

6665
// cleanup and remove all non-strings from the builder properties

tools/maven-bundle-plugin/src/main/java/org/apache/felix/bundleplugin/BundleAllPlugin.java

+1-3
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import java.util.LinkedHashMap;
2929
import java.util.List;
3030
import java.util.Map;
31-
import java.util.Properties;
3231
import java.util.Set;
3332
import java.util.jar.Manifest;
3433
import java.util.regex.Matcher;
@@ -342,8 +341,7 @@ protected BundleInfo bundle( MavenProject project ) throws MojoExecutionExceptio
342341
// + " to the same file, try cleaning: " + outputFile );
343342
}
344343

345-
org.apache.maven.shared.dependency.graph.DependencyNode dependencyGraph = buildDependencyGraph( project );
346-
Analyzer analyzer = getAnalyzer( project, dependencyGraph, instructions, new Properties(), getClasspath( project, dependencyGraph ) );
344+
Analyzer analyzer = getAnalyzer( project, instructions, getClasspath( project) );
347345

348346
Jar osgiJar = new Jar( project.getArtifactId(), project.getArtifact().getFile() );
349347

0 commit comments

Comments
 (0)