o Removed unused parts.
 o Removed ModuleIdentifierValidator including the test cause it's not needed
   anymore.
diff --git a/src/main/java/org/apache/maven/plugins/ear/AbstractEarModule.java b/src/main/java/org/apache/maven/plugins/ear/AbstractEarModule.java
index 34cda4c..8ceb14b 100644
--- a/src/main/java/org/apache/maven/plugins/ear/AbstractEarModule.java
+++ b/src/main/java/org/apache/maven/plugins/ear/AbstractEarModule.java
@@ -250,7 +250,6 @@
             try

             {

                 String outputFileNameMapping = earExecutionContext.getOutputFileNameMapping();

-                System.out.println( "*** outputFileNameMapping:" + outputFileNameMapping );

                 bundleFileName = MappingUtils.evaluateFileNameMapping( outputFileNameMapping, artifact );

             }

             catch ( InterpolationException e )

diff --git a/src/main/java/org/apache/maven/plugins/ear/AbstractEarMojo.java b/src/main/java/org/apache/maven/plugins/ear/AbstractEarMojo.java
index bc258db..f8285d9 100644
--- a/src/main/java/org/apache/maven/plugins/ear/AbstractEarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/ear/AbstractEarMojo.java
@@ -29,12 +29,10 @@
 import org.apache.maven.plugin.AbstractMojo;

 import org.apache.maven.plugin.MojoExecutionException;

 import org.apache.maven.plugin.MojoFailureException;

-import org.apache.maven.plugins.annotations.Component;

 import org.apache.maven.plugins.annotations.Parameter;

 import org.apache.maven.plugins.ear.util.ArtifactTypeMappingService;

 import org.apache.maven.plugins.ear.util.JavaEEVersion;

 import org.apache.maven.project.MavenProject;

-import org.apache.maven.shared.filtering.MavenResourcesFiltering;

 import org.codehaus.plexus.configuration.PlexusConfiguration;

 import org.codehaus.plexus.configuration.PlexusConfigurationException;

 

@@ -129,11 +127,9 @@
     // CHECKSTYLE_ON: LineLength

 

     /**

-     * When using a {@link #fileNameMapping} with versions, either use the {@code baseVersion} or the {@code version}.

-     * When the artifact is a SNAPSHOT, {@code version} will always return a value with a {@code -SNAPSHOT} postfix

-     * instead of the possible timestamped value.

-     * 

-     * @since 2.9 FIXME: Check what exactly this means!!!

+     * When using a {@link #outputFileNameMapping} with versions, either use the {@code baseVersion} or the

+     * {@code version}. When the artifact is a SNAPSHOT, {@code version} will always return a value with a

+     * {@code -SNAPSHOT} postfix instead of the possible timestamped value.

      */

     @Parameter

     private Boolean useBaseVersion;

@@ -167,9 +163,6 @@
     @Parameter( defaultValue = "${project.build.directory}", required = true )

     private File tempFolder;

 

-    @Component

-    private MavenResourcesFiltering mavenResourcesFiltering;

-

     private List<EarModule> earModules;

 

     private List<JarModule> allJarModules;

diff --git a/src/main/java/org/apache/maven/plugins/ear/EarMojo.java b/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
index b671adf..df089bd 100644
--- a/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
@@ -258,16 +258,6 @@
     @Parameter( defaultValue = "true" )

     private boolean useJvmChmod = true;

 

-    /**

-     * The list of artifacts is checked and if you set this to {@code true} the build will fail if duplicate artifacts

-     * have been found within the build configuration.

-     * 

-     * @since 2.10

-     */

-    // TODO: This can be removed if we change to full unique identifiers in EAR (next major version!)

-    @Parameter( defaultValue = "false", property = "maven.ear.duplicateArtifactsBreakTheBuild" )

-    private boolean duplicateArtifactsBreakTheBuild;

-

     /** {@inheritDoc} */

     public void execute()

         throws MojoExecutionException, MojoFailureException

@@ -741,7 +731,7 @@
                 if ( module.getLibDir() != null )

                 {

                     // MEAR-189:

-                    // We use the original name, cause in case of fileNameMapping to no-version/full

+                    // We use the original name, cause in case of outputFileNameMapping

                     // we could not not delete it and it will end up in the resulting EAR and the WAR

                     // will not be cleaned up.

                     // CHECKSTYLE_OFF: LineLength

@@ -753,7 +743,6 @@
                     // If WAR contains files with timestamps, but EAR strips them away (useBaseVersion=true)

                     // the artifact is not found. Therefore respect the current fileNameMapping additionally.

 

-                    // FIXME: Need to check this based on the new name mapping.!

                     if ( !artifact.exists() )

                     {

                         getLog().debug( "module does not exist with original file name." );

diff --git a/src/main/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidator.java b/src/main/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidator.java
deleted file mode 100644
index b2c7f21..0000000
--- a/src/main/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidator.java
+++ /dev/null
@@ -1,139 +0,0 @@
-package org.apache.maven.plugins.ear.util;
-
-/*
- * 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 java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.maven.plugins.ear.EarModule;
-
-/**
- * This class will check the list of modules if there exist a duplicate artifactId. If we have such case it's necessary
- * to create a warning to the user otherwise it can happen to overwrite existing artifacts during the EAR creation
- * process. This is a temporary solution to keep backward compatibility with previous versions. For the next major
- * release 3.X the creation of the EAR archive should be done based on unique identifiers like
- * {@code groupId:artifactId:version}.
- * 
- * @author Karl Heinz Marbaise <khmarbaise@apache.org>
- */
-public class ModuleIdentifierValidator
-{
-
-    private List<EarModule> earModules;
-
-    private Map<String, List<EarModule>> result;
-
-    /**
-     * @param earModules The list of {@link EarModule} which will be checked.
-     */
-    public ModuleIdentifierValidator( List<EarModule> earModules )
-    {
-        if ( earModules == null )
-        {
-            throw new IllegalArgumentException( "Not allowed to give null for earModules." );
-        }
-        this.earModules = earModules;
-        this.result = new HashMap<String, List<EarModule>>();
-    }
-
-    /**
-     * You have to call {@link #checkForDuplicateArtifacts()} before
-     * otherwise you will get always {@code false}.
-     * @return true in case of existing duplicates false otherwise.
-     */
-    public boolean existDuplicateArtifacts()
-    {
-        return !result.isEmpty();
-    }
-
-    /**
-     * Trigger the module list check.
-     * 
-     * @return this for fluent usage.
-     */
-    public ModuleIdentifierValidator checkForDuplicateArtifacts()
-    {
-        analyze();
-        return this;
-    }
-
-    private void analyze()
-    {
-        final Map<String, List<EarModule>> newList = new HashMap<String, List<EarModule>>();
-
-        for ( EarModule earModule : earModules )
-        {
-            String earId = earModule.getArtifact().getArtifactId() + ":" + earModule.getArtifact().getVersion();
-
-            if ( newList.containsKey( earId ) )
-            {
-                newList.get( earId ).add( earModule );
-            }
-            else
-            {
-                List<EarModule> list = new ArrayList<EarModule>();
-                list.add( earModule );
-                newList.put( earId, list );
-            }
-        }
-
-        result.clear();
-        for ( Map.Entry<String, List<EarModule>> item : newList.entrySet() )
-        {
-            if ( item.getValue().size() > 1 )
-            {
-                result.put( item.getKey(), item.getValue() );
-            }
-        }
-
-    }
-
-    /**
-     * @return A map of duplicate artifacts.
-     */
-    public Map<String, List<EarModule>> getDuplicateArtifacts()
-    {
-        return result;
-    }
-
-    /**
-     * @return The list of {@link EarModule}
-     */
-    public List<EarModule> getEarModules()
-    {
-        return earModules;
-    }
-
-    /**
-     * @param paramEarModules {@link EarModule}
-     * @return {@link ModuleIdentifierValidator}
-     */
-    public ModuleIdentifierValidator setEarModules( List<EarModule> paramEarModules )
-    {
-        if ( paramEarModules == null )
-        {
-            throw new IllegalArgumentException( "Not allowed to give null for earModules." );
-        }
-        this.earModules = paramEarModules;
-        return this;
-    }
-}
\ No newline at end of file
diff --git a/src/test/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidatorTest.java b/src/test/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidatorTest.java
deleted file mode 100644
index 62de40c..0000000
--- a/src/test/java/org/apache/maven/plugins/ear/util/ModuleIdentifierValidatorTest.java
+++ /dev/null
@@ -1,211 +0,0 @@
-package org.apache.maven.plugins.ear.util;
-
-/*
- * 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 static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.plugins.ear.EarModule;
-import org.apache.maven.plugins.ear.util.ModuleIdentifierValidator;
-import org.junit.Before;
-import org.junit.Test;
-
-public class ModuleIdentifierValidatorTest
-{
-    private List<EarModule> earModules;
-
-    private ModuleIdentifierValidator miv;
-
-    @Before
-    public void before()
-    {
-        this.earModules = new ArrayList<EarModule>();
-        this.miv = new ModuleIdentifierValidator( this.earModules );
-    }
-
-    private EarModule createMockEarModule( String groupId, String artifactId, String version )
-    {
-        EarModule earModule = mock( EarModule.class );
-        Artifact artifact = mock( Artifact.class );
-        when( earModule.getArtifact() ).thenReturn( artifact );
-        when( earModule.getArtifact().getGroupId() ).thenReturn( groupId );
-        when( earModule.getArtifact().getArtifactId() ).thenReturn( artifactId );
-        when( earModule.getArtifact().getVersion() ).thenReturn( version );
-        when( earModule.getArtifact().getId() ).thenReturn( groupId + ":" + artifactId + ":" + version );
-        return earModule;
-    }
-
-    private EarModule createMockEarModule( String groupId, String artifactId, String classifier, String version )
-    {
-        EarModule earModule = mock( EarModule.class );
-        Artifact artifact = mock( Artifact.class );
-        when( earModule.getArtifact() ).thenReturn( artifact );
-        when( earModule.getArtifact().getGroupId() ).thenReturn( groupId );
-        when( earModule.getArtifact().getArtifactId() ).thenReturn( artifactId );
-        when( earModule.getArtifact().getClassifier() ).thenReturn( classifier );
-        when( earModule.getArtifact().getVersion() ).thenReturn( version );
-        when( earModule.getArtifact().getId() ).thenReturn( groupId + ":" + artifactId + ":" + classifier + ":" + version );
-        return earModule;
-    }
-
-    @Test
-    public void existDuplicateShouldResultFalseWithEmptyList()
-    {
-        miv.checkForDuplicateArtifacts();
-
-        assertFalse( miv.existDuplicateArtifacts() );
-    }
-
-    @Test
-    public void shouldNotFailCauseTheArtifactIdsAreDifferentWithSameGroupId()
-    {
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-a", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-b", "1.0.0" ) );
-
-        assertFalse( miv.checkForDuplicateArtifacts().existDuplicateArtifacts() );
-
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertTrue( result.isEmpty() );
-    }
-
-    @Test
-    public void shouldNotFailCauseTheArtifactIdsAreDifferent()
-    {
-        earModules.add( createMockEarModule( "org.apache", "artifact-1", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache", "artifact-2", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-1", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-2", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-a", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-b", "1.0.0" ) );
-
-        assertFalse( miv.checkForDuplicateArtifacts().existDuplicateArtifacts() );
-
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertTrue( result.isEmpty() );
-    }
-
-    @Test
-    public void shouldNotFailCauseTheClassifiersAreDifferent()
-    {
-        earModules.add( createMockEarModule( "org.apache", "artifact-1", "first", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache", "artifact-2", "second", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-1", "first", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-2", "second", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-a", "first", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-b", "second", "1.0.0" ) );
-
-        assertFalse( miv.checkForDuplicateArtifacts().existDuplicateArtifacts() );
-
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertTrue( result.isEmpty() );
-    }
-
-    @Test
-    public void shouldFailCauseTheArtifactIdsAreIdenticalWithDifferentGroupIds()
-    {
-        EarModule earModule1 = createMockEarModule( "org.apache.maven.test", "result-artifact", "1.0.0" );
-        EarModule earModule2 = createMockEarModule( "org.apache.maven", "result-artifact", "1.0.0" );
-        earModules.add( earModule1 );
-        earModules.add( earModule2 );
-
-        miv.checkForDuplicateArtifacts();
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertFalse( result.isEmpty() );
-        assertEquals( 1, result.size() );
-        assertTrue( result.containsKey( "result-artifact:1.0.0" ) );
-        assertEquals( 2, result.get( "result-artifact:1.0.0" ).size() );
-    }
-
-    @Test
-    public void shouldFailCauseTheArtifactIdsAreIdenticalWithClassifiers()
-    {
-        EarModule earModule1 = createMockEarModule( "org.apache.maven.test", "result-artifact", "first", "1.0.0" );
-        EarModule earModule2 = createMockEarModule( "org.apache.maven", "result-artifact", "second", "1.0.0" );
-        earModules.add( earModule1 );
-        earModules.add( earModule2 );
-
-        miv.checkForDuplicateArtifacts();
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertFalse( result.isEmpty() );
-        assertEquals( 1, result.size() );
-        assertTrue( result.containsKey( "result-artifact:1.0.0" ) );
-        assertEquals( 2, result.get( "result-artifact:1.0.0" ).size() );
-    }
-
-    @Test
-    public void shouldFailCauseTheArtifactIdsAreIdentical()
-    {
-        earModules.add( createMockEarModule( "org.apache", "artifact-1", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache", "artifact-2", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-1", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven", "artifact-2", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-a", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-b", "1.0.0" ) );
-
-        miv.checkForDuplicateArtifacts();
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertFalse( result.isEmpty() );
-    }
-
-    @Test
-    public void shouldFailWithAppropriateInformationAboutTheIdenticalArtifactIds()
-    {
-        EarModule earModule_1 = createMockEarModule( "org.apache", "artifact-2", "1.0.0" );
-        EarModule earModule_2 = createMockEarModule( "org.apache.maven", "artifact-2", "1.0.0" );
-
-        earModules.add( createMockEarModule( "org.apache", "artifact-1", "1.0.0" ) );
-        earModules.add( earModule_1 );
-        earModules.add( createMockEarModule( "org.apache.maven", "aid-1", "1.0.0" ) );
-        earModules.add( earModule_2 );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-a", "1.0.0" ) );
-        earModules.add( createMockEarModule( "org.apache.maven.test", "result-artifact-b", "1.0.0" ) );
-
-        miv.checkForDuplicateArtifacts();
-        Map<String, List<EarModule>> result = miv.getDuplicateArtifacts();
-
-        assertFalse( result.isEmpty() );
-        assertEquals( 1, result.size() );
-
-        assertTrue( result.containsKey( "artifact-2:1.0.0" ) );
-
-        List<EarModule> list = result.get( "artifact-2:1.0.0" );
-
-        assertEquals( 2, list.size() );
-        assertTrue( list.contains( earModule_1 ) );
-        assertTrue( list.contains( earModule_2 ) );
-
-    }
-
-}