如果我在我的目录 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'
最佳答案
如果没有关于您的设置或您使用的代码的更多信息,很难回答这个问题。特别是产生错误的部分,因为我们不知道您的代码是什么样的(无论是在 build.xml 中还是在您的 Python 脚本中)。
正如@Mark 所指出的,一个简单的开始是 <echo>${basedir}</echo>
在你的release
任务以查看它认为它正在运行的确切位置。我的猜测是您正在尝试加载属性文件或类似文件,但在前面的步骤中没有找到它。
如果 ${basedir}
的位置,您可以做什么从目录中运行与在 python 脚本中运行时看起来不同是使用对 build.xml 文件所在位置的引用并从那里引用:
<dirname property="project.basedir" file="${ant.file.project_name}"/>
然后使用 ${project.basedir}
而不是 ${basedir}
.
当然,所有这些都假设您的 ${basedir}
两者之间显得不同。否则我需要了解更多信息才能诊断问题。
关于android - 为什么Python运行ant build失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8273706/