gpt4 book ai didi

ant - 没有 -q 标志让 Ant 安静?

转载 作者:IT老高 更新时间:2023-10-28 11:20:45 33 4
gpt4 key购买 nike

我有一个 ant 构建文件,它通常在完全不同的环境中运行。默认情况下,我正在寻找与使用相同的行为:

ant -q

但是,由于某些团队成员的配置不同,因此在每个人的环境中指定 -q 选项并不容易以统一的方式完成(有些人从 eclipse 运行 ant,有些从命令行运行,有些从调试/分析工具运行,等等。每个都有不同的方法来指定 ant 参数,如 -q)

所以我正在寻找一种方法让 ant 文件安静地调用自身...

如下所示是理想的:

<target name="default">
<antcall quiet="yes" target="build" /> <!-- doesn't work -->
</target>

任何人都可以想办法完成这样的事情吗?我所追求的只是让构建在运行默认目标时安静地运行,无论是否设置了 -q。

最佳答案

一个选项可能是从目标中设置日志记录级别。

您可以通过一个简短的脚本任务来访问记录器。比如:

<target ... >
<script language="javascript">
var logger = project.getBuildListeners( ).firstElement( );
logger.setMessageOutputLevel( 0 );
</script>
...
</target>

我不熟悉 Eclipse 如何调用 Ant,但可能有必要遍历所有构建监听器以全面“静默”。

建议无论您最终如何执行此操作,都可以轻松切换回详细运行。

编辑 - 对评论的回应: 您可以使用 project.getProperty() 从脚本中访问项目属性:

<property name="verboseFlag" value="1" />
<script language="javascript">
var logger = project.getBuildListeners().firstElement();
var verboseMode = project.getProperty( "verboseFlag" )
if ( ! "1".equals( verboseMode ) )
logger.setMessageOutputLevel( 0 );
</script>

(有点旧)API docs are here ,包括 project class .

关于ant - 没有 -q 标志让 Ant 安静?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462732/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com