为什么Python无法运行ant构建?
我在我的项目文件夹 proj
里运行 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'
1 个回答
0
要回答这个问题其实挺难的,因为我们不知道你的设置或者你使用的代码是什么样的。特别是那些产生错误的部分,因为我们看不到你的代码(无论是在build.xml文件里还是在你的python脚本中)。
一个简单的开始方法,正如@Mark所提到的,可以在你的release
任务中加上<echo>${basedir}</echo>
,这样可以查看它到底认为自己是从哪里运行的。我猜测你可能是在尝试加载一个属性文件之类的,但在之前的步骤中没有找到它。
如果在目录内运行和在你的python脚本中运行时,${basedir}
的位置看起来不一样,你可以使用一个指向你的build.xml文件所在位置的引用,从那里进行引用:
<dirname property="project.basedir" file="${ant.file.project_name}"/>
然后用${project.basedir}
来替代${basedir}
。
当然,这一切都是在假设你的${basedir}
在这两种情况下表现得不一样。如果没有,我就需要知道更多信息才能帮你找出问题所在。