我有一个如下所示的 Windows BAT 文件:
Z:
tool.exe c:\mypath\to\input c:\mypath\to\output \flag1 flag2
也就是说,tool.exe 驻留在映射的网络驱动器上。该工具要求 EXE 从其自己的目录(在本例中为 Z:)运行。
通过双击或在 CMD 窗口中运行时,BAT 工作正常。
我想通过 Ant 自动化它。我的尝试在这里:
<target name="go">
<exec executable="cmd">
<arg value="/c"/>
<arg value="runtool.bat"/>
</exec>
</target>
它不起作用。通过此链接和其他研究,我了解以下内容:
- "Z:" 可能等同于 "cd Z:\"
- 没有“cd.exe”...“cd”由 Windows CMD shell 解释,不能通过“cmd.exe”使用
也就是说,如何在 Ant 中实现目标?在 Java 中?
我愿意编写自己的 Ant 任务,对目录进行进一步的网络配置,等等。(冒着使问题过于广泛的风险,我们正在使用 Jenkins 并对那里的想法持开放态度。)