I am confused about some eclipse .classpath files that are generated from a couple of pom files that I inherited for a medium sized project (about 10 projects, most inheriting from a "...-common" project).
When I look at the m2e-generated .classpath file, it reads:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry including="**/*.java" kind="src" output="target/classes" path="src/main/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
...
</classpath>
The including="**/*.java" I understand and consider correct - we only want .java files compiled to .class files to end up in target/classes (and ignore all other files that we might encounter underneath src/main/java).
But the entry for resources puzzles me: excluding="**" would suggest to me, that NO FILES AT ALL should be copied over to target/classes. However, when I check I see that there are a couple of .xml, .xsd and .sql files copied over from the src/main/resources subtree to target/classes (as they should be in my case because they are requires at runtime).
But what does this "excluding" then mean? Apparently it has no effect, since there are still files copied over. Puzzling!