减轻 Maven pom.xml 文件冗长(或:粉丝对 Maven 的批评)
2022-09-03 07:25:59
我喜欢maven。我甚至非常非常喜欢它。自从我从 Ant 切换到它以来,我节省了大量的工作时间,构建构建文件,管理依赖项等,并在我的源代码管理存储库中节省了大量空间。
问题是 maven 文件太冗长。不是说Ant文件不那么冗长,但它们的详细程度适合它们所做的事情。
例如,与其写:
<dependencies>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
<dependency>
<groupId>com.myosproject</groupId>
<artifactId>superlibrary</artifactId>
<version>7.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
我想写一些类似的东西
<dependencies>
commons-logging/commons-logging/1.1.1
com.myosproject/superlibrary/7.5
test:junit/junit/3.8.1
</dependencies>
或者代替
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
我想要
<build version="1.5"/>
和(最后一个例子,我们完成了),而不是写:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>native2ascii-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>UTF8</encoding>
</configuration>
</execution>
</executions>
</plugin>
我不想什么都不写。也就是说,maven 会检测 native2ascii 文件夹的存在,并默认执行正确的操作。
我知道我正在将内置功能与插件和其他东西混合在一起,但请尝试从maven用户的角度来看待,他对该工具非常满意,但认为他可以更快乐。
所以:
有没有办法将maven配置为这样工作?(这样做是明智的)
有没有另一个我不知道的工具可以做到这一点?