我想仅编译源目录中选定的文件或目录(包括子目录)。我非常确定我可以使用的<includes>
的配置,但它似乎无法正常工作,因为它仍将所有类编译为target/classes
。什么是真正奇怪的,Maven的输出表明,设置实际上做的工作,因为:仅编译Maven中的选定文件
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<includes>
<include>com/example/dao/bean/*.java</include>
</includes>
</configuration>
</plugin>
我:
[INFO] Compiling 1 source file to c:\Projects\test\target\classes
,但没有编译器的配置,我有:
[INFO] Compiling 14 source file to c:\Projects\test\target\classes
然而,在这两种情况下,我所提到的所有14个类都被编译为target/classes
。你能解释一下还是建议另一种解决方案来只编译选定的文件?
您是否记得在测试之前做一次清洁? – artbristol
你以前试过排除**/*吗?我想默认情况下maven包含所有内容,你必须排除。您是否正在使用带有偶然机会(如Eclipse)的“autobuild”选项的IDE? – mschonaker
是的,我在编译前清理。是的,我试图排除'**/*。java'。这次我不使用IDE。只需简单的'pom.xml'和控制台。 –