我最近被分配了一项任务,让 ant 能够为不同的环境构建 war 包。除了一个功能,我几乎完成了。
ant通过-Denv=DEV
接受一个env
参数,使用不同的配置文件制作war包。但默认目标是 start
,它将构建、部署和启动 tomcat。当我传入 -Denv=PROD
arg 时,我不希望 ant 部署 war 也不启动服务器。我只想用 ant 构建 ROOT.war。够了。
我知道我可以再输入一个词来实现这个目标,但你知道我们都很懒惰。 :D
有谁知道如何根据命令行参数更改默认目标? 我的要求如下:
ant -Denv=DEV
将构建、部署和启动服务器ant -Denv=PROD
只会构建 ROOT.war
最佳答案
我建议您在名为“DEV”和“PROD”的 build.xml
文件中定义目标,然后将 Ant 调用为:
ant DEV
或
ant PROD
如果您想坚持当前使用系统属性来选择目标的方法,那么@krock 的回答似乎是可行的方法。 (但我认为这种方法没有任何优势。)
关于java - 通过命令行参数更改默认的 Ant 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3082048/