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 手机上 - 应用程序任务未按预期工作

Postgresql 可序列化事务未按预期工作

HTML 表上的“querySelectorAll”未按预期工作

选项卡中的顺风选项卡未按预期工作

jquery 中的 next() 函数未按预期工作