FELIX-3070 : SCR Plugin and dependencies with classifier cause issue depending on the order of dependency in pom.xml
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1176365 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/scrplugin/maven-scr-plugin/changelog.txt b/scrplugin/maven-scr-plugin/changelog.txt
index 51a4248..4552029 100644
--- a/scrplugin/maven-scr-plugin/changelog.txt
+++ b/scrplugin/maven-scr-plugin/changelog.txt
@@ -4,6 +4,8 @@
** Bug
* [FELIX-2963] - scr annotations @Activate @Deactivate @Modified are not detected with class inheritance
* [FELIX-3117] - NullPointerException when not implementing interface that is defined with @Service
+ * [FELIX-3070} - SCR Plugin and dependencies with classifier cause issue depending on the order of dependency in pom.xml
+
** Improvement
* [FELIX-3066] - Add support for source directory include filter via plugin configuration
diff --git a/scrplugin/maven-scr-plugin/src/main/java/org/apache/felix/scrplugin/mojo/MavenJavaClassDescriptorManager.java b/scrplugin/maven-scr-plugin/src/main/java/org/apache/felix/scrplugin/mojo/MavenJavaClassDescriptorManager.java
index 85fa2b9..870ee04 100644
--- a/scrplugin/maven-scr-plugin/src/main/java/org/apache/felix/scrplugin/mojo/MavenJavaClassDescriptorManager.java
+++ b/scrplugin/maven-scr-plugin/src/main/java/org/apache/felix/scrplugin/mojo/MavenJavaClassDescriptorManager.java
@@ -25,7 +25,6 @@
import org.apache.felix.scrplugin.*;
import org.apache.felix.scrplugin.helper.StringUtils;
import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.util.DirectoryScanner;
@@ -120,8 +119,7 @@
ArrayList<File> dependencies = new ArrayList<File>();
@SuppressWarnings("unchecked")
- final Map<String, Artifact> resolved = project.getArtifactMap();
- final Iterator<Artifact> it = resolved.values().iterator();
+ final Iterator<Artifact> it = project.getArtifacts().iterator();
while ( it.hasNext() )
{
final Artifact declared = it.next();
@@ -134,10 +132,9 @@
|| Artifact.SCOPE_SYSTEM.equals( declared.getScope() ) )
{
this.log.debug( "Resolving artifact " + declared );
- final Artifact artifact = resolved.get( ArtifactUtils.versionlessKey( declared ) );
- if ( artifact != null )
+ if ( declared.getFile() != null )
{
- dependencies.add( artifact.getFile() );
+ dependencies.add( declared.getFile() );
}
else
{