【问题标题】:Ant create process error cygwinAnt创建进程错误cygwin
【发布时间】:2011-11-07 12:00:03
【问题描述】:

我正在尝试运行一个简单的 ant 构建,它有一个在 cygwin 中运行 bash shell 脚本的目标。当我运行构建时,目标似乎运行但可执行文件没有。相反,我得到一个 Java IO 异常:创建进程错误 = 193。如果我独立运行脚本,它工作正常。目前我正在使用一个只有一个命令的 test.sh,向屏幕回显一条消息。

我知道从 cygwin 运行脚本可能不是最佳实践,但是在我得到这个短期解决方案后,我想要将脚本功能集成到 ant 构建中。

我的 XML 如下...

<?xml version="1.0"?>

<project name="TestProject" default="exec_build_config" basedir=".">
<property name="test" location="test.sh"/>
<target name="exec_build_config" >
                <exec executable="${test}">
                </exec>
        </target>
</project>

我的 shell 脚本...

#!/bin/sh

echo "testing !!!"

它只是不起作用:(任何帮助将不胜感激!谢谢

【问题讨论】:

    标签: java bash ant cygwin


    【解决方案1】:

    您是否尝试过运行相当于:

    sh test.sh
    

    ? (即将可执行文件指定为 sh 并带有相关参数)。

    执行上述操作将告诉 Ant 使用您的测试 shell 脚本的参数执行 sh。我怀疑#! 语法不会受到 Java 程序生成器机制的尊重,因为它是 Unix 特定的。

    【讨论】:

    • 给它一个可执行文件的完整路径怎么样?比如 c:/some/path/sh.exe test.sh?
    【解决方案2】:

    敲了敲头后,我发现了导致问题的原因。看起来 QTP 的安装改变了我的一些环境变量,在我重置这些之后它似乎工作得很好!不管怎么说,还是要谢谢你!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-10
      • 1970-01-01
      • 2014-09-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多