Eclipse:按顺序自动运行Ant脚本

时间:2014-12-19 13:39:12

标签: eclipse ant automation

我正在使用Eclipse的Ant视图来运行我的构建文件。我必须以特定的顺序运行几个文件,我想知道是否有可能实现自动化(我确定有...)。但是,它们需要随后运行,即脚本2可能无法启动,直到脚本1成功完成。我的大多数Ant脚本都会触发Maven命令。

是否有任何Eclipse插件或功能可以帮助我自动运行我的Ant文件?甚至可能在构建之前和之后关闭并重启我的Java EE服务器?

我想双击一次,让我的工具链工作,而我......给自己另外一杯咖啡。

2 个答案:

答案 0 :(得分:0)

我可以想到两个选择:

  1. 编写一个包装器Ant脚本/目标,以所需顺序调用其他脚本/目标。自从我编写任何Ant以来已经有好几年了,但我记得这样做,可能是使用了<ant> task。简单地在正确的序列中定义target that has dependencies/prerequisites(与<import> task一起引入单独的构建文件)可能是有意义的。 Here is a discussion关于这两种方法之间的区别。

  2. 使用Eclipse的External Tool feature来调用调用每个Ant目标的批处理/ shell脚本。

答案 1 :(得分:0)

这是我最终提出的:

<project default="all" basedir=".." name="Build all projects">

  <property name="folder.project.a" value="MyProjectA" />
  <property name="folder.project.b" value="MyOtherProjectB" />

  <!-- Target to build all projects -->
  <target name="all" depends="projectA, projectB" />

  <target name="projectA">
    <echo>Building project A.</echo>
    <ant antfile="${folder.project.a}/my_build_file.xml" />
  </target>

  <target name="projectB">
    <echo>Building project B.</echo>
    <ant antfile="${folder.project.b}/my_other_build_file.xml" />
  </target>

</project>