如果我在我的目录ant release
的shell中运行proj
它运行正常,但是,当我尝试从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'
答案 0 :(得分:0)
如果没有关于您的设置或您使用的代码的更多信息,很难回答这个问题。特别是生成错误的部分,因为我们不知道您的代码是什么样的(在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}
在两者之间显得不同。否则我需要了解更多以便诊断问题。