作为一个长期的Java用户,鄙人使用得最多的生命周期管理工具就是Maven。在强大的中央仓库的支持下,Maven使得Java项目的第三方依赖管理、JAR包的发布等往日繁琐的工作变得轻而易举,井井有条。但是,用多了Maven,也难免会对Maven浩繁的配置文件感到头大。Maven使用的是XML格式的POM配置文件对项目进行管理,尽管XML是一种完备的文件格式,但是它的繁琐和冗余也是多为人所诟病的,比如它的前后标签匹配,各种标签的嵌套等等。在一个大型的Java项目中,一份POM配置文件可以多达数百行,甚至上千行,而在这么多行的内容中,真正有效的可能只是寥寥,比如下面的这段配置文件:
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.0,)</versionRange>
<goals>
<goal>copy-dependencies</go