我在项目中有一个包de.ht.ak.praktikum.hook
,该项目位于源文件夹src
中,但应从构建路径中排除。我曾经这样做,右击它并选择Build Path - >排除。由于我每次更新项目时都将maven添加到项目中,排除的文件夹再次变为包,即排除被删除。我试着用这种方式解决它:
...
<build>
<sourceDirectory>src</sourceDirectory>
<resources>
<resource>
<directory>src</directory>
<excludes>
<exclude>de/ht/ak/praktikum/hook</exclude>
</excludes>
</resource>
</resources>
...
</build>
...
我还尝试按照there描述的那样做:
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>3.1</version>
<configuration>
<sourceExcludes>
<sourceExclude>de/ht/ak/praktikum/hook/</sourceExclude>
</sourceExcludes>
<sourceIncludes>
<sourceInclude>**/*.java</sourceInclude>
</sourceIncludes>
</configuration>
</plugin>
...
然而,这两种方法都没有帮助。有什么想法吗?
答案 0 :(得分:2)
您的第一次尝试无效,因为您指定将其排除为资源(即,在您生成的JAR文件中打包的那些文件 - 您通常不需要源文件成为他们中的一员。)
第二次尝试更多的是在正确的轨道上。但是,您希望将它们从编译中排除,因此您需要设置the exclude
option of the maven-compiler-plugin
。即,像这样:
<build>
..
<plugins>
..
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<excludes>
<exclude>de/ht/ak/praktikum/hook/*.java</exclude>
</excludes>
</configuration>
</plugin>
..
</plugins>
</build>
在Eclipse(Maven - &gt; Update Project)中更新项目时,Eclipse应该遵循此配置并将其从Eclipse内部构建路径中排除。