Index: src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java =================================================================== --- src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java (revision 452544) +++ src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java (working copy) @@ -272,6 +272,16 @@ private boolean isJavaProject; /** + * When set to true, resource directories which are marked as filtered will + * not be added to eclipse's source directories. They will therefore not be + * included in the classpath from eclipse's point of view. For example, they + * will not be accessible from unit tests when ran from eclipse. + * + * @parameter default-value="false" + */ + private boolean excludeFilteredResourcesFromSourceDirs; + + /** * Getter for buildcommands. * @return Returns the buildcommands. */ @@ -787,6 +797,11 @@ String includePattern = null; String excludePattern = null; + if( resource.isFiltering() && excludeFilteredResourcesFromSourceDirs ) { + getLog().debug( Messages.getString( "EclipseClasspathWriter.filteredresourcedirexcludedfromsourcedirs", resource.getDirectory() ) ); //$NON-NLS-1$ + continue; + } + if ( resource.getIncludes().size() != 0 ) { // @todo includePattern = ? Index: src/main/resources/org/apache/maven/plugin/eclipse/messages.properties =================================================================== --- src/main/resources/org/apache/maven/plugin/eclipse/messages.properties (revision 452544) +++ src/main/resources/org/apache/maven/plugin/eclipse/messages.properties (working copy) @@ -28,7 +28,8 @@ EclipseClasspathWriter.lookingforsources=Looking for source archive for artifact {0} EclipseClasspathWriter.sourcesavailable=Sources attachment for artifact {0} set to {1} - +EclipseClasspathWriter.filteredresourcedirexcludedfromsourcedirs=Resource directory {0} is excluded from sources directories because it is filtered + EclipseProjectWriter.notafile=Not adding a file link to {0}; it is not a file EclipseCleanMojo.failedtodelete=Failed to delete {0} file: {0} Index: src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java =================================================================== --- src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java (revision 452544) +++ src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java (working copy) @@ -223,4 +223,14 @@ testProject( "project-23" ); } + /** + * Ability to exclude filtered resources from being added to the eclipse classpath + * @throws Exception any exception thrown during test + */ + public void testProject24() + throws Exception + { + testProject( "project-24" ); + } + } Index: src/test/resources/projects/project-24/pom.xml =================================================================== --- src/test/resources/projects/project-24/pom.xml (revision 0) +++ src/test/resources/projects/project-24/pom.xml (revision 0) @@ -0,0 +1,29 @@ + + 4.0.0 + eclipse + maven-eclipse-plugin-test-project-24 + 24 + maven-eclipse-plugin-test-project-24 + + + + src/main/resources + true + + + src/main/binary-resources + false + + + + + org.apache.maven.plugins + maven-eclipse-plugin + + true + + + + + Index: src/test/resources/projects/project-24/expected/.classpath =================================================================== --- src/test/resources/projects/project-24/expected/.classpath (revision 0) +++ src/test/resources/projects/project-24/expected/.classpath (revision 0) @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file Index: src/test/resources/projects/project-24/expected/.project =================================================================== --- src/test/resources/projects/project-24/expected/.project (revision 0) +++ src/test/resources/projects/project-24/expected/.project (revision 0) @@ -0,0 +1,14 @@ + + maven-eclipse-plugin-test-project-24 + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.jdt.core.javanature + + \ No newline at end of file Index: src/test/resources/projects/project-24/expected/.classpath =================================================================== --- src/test/resources/projects/project-24/expected/.classpath (revision 0) +++ src/test/resources/projects/project-24/expected/.classpath (revision 0) @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file Index: src/test/resources/projects/project-24/expected/.project =================================================================== --- src/test/resources/projects/project-24/expected/.project (revision 0) +++ src/test/resources/projects/project-24/expected/.project (revision 0) @@ -0,0 +1,14 @@ + + maven-eclipse-plugin-test-project-24 + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.jdt.core.javanature + + \ No newline at end of file Index: src/test/resources/projects/project-24/pom.xml =================================================================== --- src/test/resources/projects/project-24/pom.xml (revision 0) +++ src/test/resources/projects/project-24/pom.xml (revision 0) @@ -0,0 +1,29 @@ + + 4.0.0 + eclipse + maven-eclipse-plugin-test-project-24 + 24 + maven-eclipse-plugin-test-project-24 + + + + src/main/resources + true + + + src/main/binary-resources + false + + + + + org.apache.maven.plugins + maven-eclipse-plugin + + true + + + + + Index: src/test/resources/projects/project-24/src/main/binary-resources/dummy =================================================================== Index: src/test/resources/projects/project-24/src/main/binary-resources/dummy =================================================================== Index: src/test/resources/projects/project-24/src/main/resources/dummy =================================================================== Index: src/test/resources/projects/project-24/src/main/resources/dummy ===================================================================