在ANT中执行`android update project`失败,找不到sdkmanager.jar

时间:2012-10-01 18:13:17

标签: android linux bash shell ant

当尝试在项目上执行android更新时,我收到以下错误。使用linux。

这是ant代码(其中${directory}是android项目的目录):

<exec
    executable="/bin/bash"
    failonerror="true">
        <arg value="android"/>
        <arg value="update"/>
        <arg value="project"/>
        <arg value="-p"/>
        <arg value="${directory}"/>
</exec>

这是错误:

[exec] android: can't find sdkmanager.jar

我尝试将sdkmanager.jar的权限更改为777,但仍然会出现同样的错误。

从bash或shell脚本执行相同的命令时,它可以正常工作。当在终端上运行时,它可以正常工作。

是什么导致了这个问题,我该如何解决?

1 个答案:

答案 0 :(得分:0)

如果您调用的脚本已包含脚本顶部的!/bin/sh,则无需在ant /bin/bash中调用exec可执行文件。

因此,如果我将问题中发布的代码更改为此...

<exec
    executable="android"
    failonerror="true">
        <arg value="update"/>
        <arg value="project"/>
        <arg value="-p"/>
        <arg value="${directory}"/>
</exec>

......工作正常。

谢谢,希望这可以帮助将来的某个人。