【问题标题】:Executing ANT command programmatically from Java throws up error从 Java 以编程方式执行 ANT 命令会引发错误
【发布时间】:2017-07-29 16:44:10
【问题描述】:

从 Java 执行 Ant 命令引发错误

尝试了以下步骤但未能成功,非常感谢任何帮助:

  1. 我们在用ant构建的项目中有基于java的工具
  2. 我们将通过导航到 java 项目来手动运行该工具,并运行如下工具命令:
    1. cd /Users/Project
    2. ant 命令

上面的手动命令运行正常,但是当我们尝试从 Java 代码执行相同的命令时:

String[] cmd = { "ant run.loader -Dchangeuser=999-Dt=1-Dsl=0-Dpath=PathofInputFile/FileName.txt | tee log.txt", "-c", "//Users//ProjDir" };        
Process p = Runtime.getRuntime().exec(cmd);    

以上Java代码生成错误如下:

java.io.IOException: Cannot run program "ant -v": error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
    at java.lang.Runtime.exec(Runtime.java:620)
    at java.lang.Runtime.exec(Runtime.java:485)

请注意,我们已经在 PATH 变量中配置了 Ant 路径。

非常感谢任何帮助或建议。

【问题讨论】:

    标签: java ant


    【解决方案1】:

    ant 是一个批处理/shell 脚本:

    由于 Ant 是一个 Java 应用程序,最好 to run Ant by the ant-launcher.jar

    【讨论】:

    • 我们必须从 iOS/mac 运行 ant 命令,请有任何建议
    • 我已经扩展了 macOS 的答案。我通过 ant-launcher.jar 推荐平台无关的解决方案。
    猜你喜欢
    • 2016-04-03
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-19
    相关资源
    最近更新 更多