0

我的 groovy 构建脚本面临一个相当奇怪的问题。整个项目使用一个帮助程序 groovy 脚本,该脚本调用所有其他构建脚本(maven 和 ant)。由 groovy 脚本调用调用的 ant 目标之一,通过“exec”grails war 调用:

    <exec executable="cmd" dir="${parentDir}/${grails.appname}">
        <arg value="/c"/>
        <arg path="${env.GRAILS_HOME}/bin/grails.bat"/>
        <arg value="war"/>
        <arg value="${grails.appname}-${app.version}.war"/>
    </exec>

此块的调用失败并显示:

     [exec] Application is pre-Grails 0.5, please run: grails upgrade

有什么建议可以解决这个问题吗?

谢谢你的时间。

4

1 回答 1

1

我终于找到了问题的解决方案,我不知道这是否是最好的方法,但它解决了我的问题。因此,在与“exec”块相同的目标中,我添加了一个新的“exec”块来调用 grails.bat 上的升级。到目前为止一切顺利,在不带参数的情况下调用此命令将生成一个确认问题,是否继续请求的操作 - 在 ant 中,这将创建一个无限循环。为了避免这种情况,我添加了“-f”参数。整个 exec 块:

    <exec executable="cmd" dir="${parentDir}/${grails.appname}">
        <arg value="/c"/>
        <arg path="${env.GRAILS_HOME}/bin/grails.bat"/>
        <arg value="upgrade"/>
        <arg value="-force"/>
    </exec>

希望这会对某人有所帮助。

于 2012-04-05T12:23:38.957 回答