如何更改 ant 目录以从不同的文件夹执行 ant 任务



有两个构建文件放置在不同的文件夹中

folder1/build.xml

folder1/subfolder/sub/build.xml

我在folder1/build.xml有可执行的任务

<exec dir="." executable="${tools.versionupdater.exe}" failonerror="true">
  <arg value="${dist.path}" />
  <arg value="${build.version}" />
  <arg value="${build.version}" />
</exec>

它运行正常,因为它可以找到放置在同一根文件夹下的folder1/tools/VersionUpdater/versionupdater.exe中的visionupdater.exe

如何从另一个构建文件运行versionupdater.exe哪个放在folder1/subfolder/sub/build.xml

只有当${tools.versionupdater.exe}扩展到可从folder1解析但无法从folder1/subfolder/sub解析的相对路径时,才会发生这种情况。

解决方法取决于您如何准确拨打exec

  1. 如果folder1/build.xmlfolder1/subfolder/sub/build.xml都包含相同的exec任务(重复),则完成此操作的唯一方法是确保 tools.versionupdater.exe 属性的值是绝对路径,而不是相对路径。
  2. 如果folder1/subfolder/sub/build.xmlfolder1/build.xml 中调用目标,请确保使用 ant 任务而不是 antcall ,提供 dir 属性:

    <ant antfile="../../build.xml" dir="../../" target="...">
        ... parameters ...
    </ant>
    

相关内容

  • 没有找到相关文章

最新更新