【问题标题】:Why does Python fail to run ant build?为什么 Python 无法运行 ant build?
【发布时间】:2011-11-25 20:00:39
【问题描述】:

如果我在我的目录proj 的shell 中运行ant release,它可以正常工作,但是,当我尝试从python 执行它时,它会失败,为什么?

/Users/hunterp/proj
Buildfile: /Users/hunterp/proj/build.xml

BUILD FAILED
/Users/hunterp/proj/build.xml:46: sdk.dir is missing. Make sure to generate local.properties using 'android update project'

【问题讨论】:

  • ant运行时当前目录和环境变量有什么区别?

标签: android python shell ant environment-variables


【解决方案1】:

如果没有有关您的设置或您使用的代码的更多信息,很难回答这个问题。特别是生成错误的部分,因为我们不知道您的代码是什么样的(在 build.xml 或您的 python 脚本中)。

正如@Mark 所指出的,一个简单的开始就是在你的release 任务中<echo>${basedir}</echo> 看看它认为它从哪里运行。我的猜测是您正在尝试加载属性文件或类似文件,但在前面的步骤中没有找到它。

如果${basedir} 的位置在从目录中运行时与在 python 脚本中运行时看起来不同,您可以做的是使用对 build.xml 文件所在位置的引用并从那里引用:

<dirname property="project.basedir" file="${ant.file.project_name}"/>

然后使用${project.basedir} 而不是${basedir}

当然,所有这些都假设您的${basedir} 在两者之间出现不同。否则我需要了解更多信息才能诊断问题。

【讨论】:

    猜你喜欢
    • 2021-01-29
    • 2012-10-03
    • 2012-05-16
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-15
    • 1970-01-01
    相关资源
    最近更新 更多