Ant中的Checksum任务未按预期工作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ant中的Checksum任务未按预期工作相关的知识,希望对你有一定的参考价值。
我正在为一个小的蚂蚁文件/目标而努力:
<project name="test" default="test" basedir=".">
<property name="out.dir" value="$basedir/out/"/>
<property name="apidoc.path" value="$out.dirtest.zip"/>
<property name="apidoc.input" value="$basedir/../source//apidocs"/>
<property name="apidoc.sha" value="TODO"/>
<target name="test">
<echo message="Starting target APIDOC"/>
<zip destfile="$apidoc.path" basedir="$apidoc.input" update="no"/>
<echo message="$apidoc.path"/>
<checksum file="$apidoc.path" algorithm="SHA-256" property="apidoc.sha"/>
<echo message="Hash wert ist $apidoc.sha"/>
</target>
</project>
目标应(确实)从doc文件夹创建一个zip文件,然后将zip文件的哈希值存储到属性中以备将来使用。但是,哈希值未存储在属性中。我得到的输出如下:
test:
[echo] Starting target APIDOC
[echo] /Users/user1/git/project/out/test.zip
[echo] Hash wert ist TODO
BUILD SUCCESSFUL
有人有主意,这是怎么回事?
答案
Ant中的属性是不可变的。此行
<property name="apidoc.sha" value="TODO"/>
设置该值,之后将无法更改。
如果您使用-v
命令行选项运行ant,您应该会看到类似的消息
Override ignored for property "apidoc.sha"
表明忽略了在<checksum>
任务中更改属性值的尝试。
以上是关于Ant中的Checksum任务未按预期工作的主要内容,如果未能解决你的问题,请参考以下文章
在小米或 Oppo 或 Vivo 手机上 - 应用程序任务未按预期工作