如果您有一个现有的ant文件,那么将项目转换为Maven的最佳方法是什么。我已经检查过像fAnt这样的东西,但是如果我要把这些东西弄得乱七八糟,我不妨为Maven做好准备。我期望存在的东西可以基于现有的build.xml为我启动pom.xml,但我还没有找到任何东西。建议?
答案 0 :(得分:1)
我不知道有什么好的自动化方法可以进行这样的迁移,因为事情可能会有所不同,所以我会一步一步地手动完成,并将现有的ant构建与未来的新构建并行,直到完成整个迁移(从技术和人的角度来看)。
首先,重构现有的Ant构建以使其在Maven约定上对齐:
src/main/java
用于应用程序源等。)然后,开始创建Maven构建:
如果您不想在工作完成之前更改任何内容并创建脚本来移动内容,则可以在单独的VCS分支中执行此操作。准备好后,合并Maven特定的东西并应用脚本。
答案 1 :(得分:1)
您可以使用maven-antrun-plugin从Maven运行Ant脚本。你的pom.xml看起来像这样:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-nodeps</artifactId>
<version>${ant-nodeps.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>init</id>
<phase>compile</phase>
<configuration>
<tasks>
<!-- Ant code goes here -->
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</build>
</project>
这样你就可以开始将你的依赖项移动到Maven中,并在Ant脚本中像这样引用它们
${com.foo.bar:my-lib:jar}
然后开始慢慢地将你的蚂蚁片段移动到纯粹的Maven中。