android - 为什么Python运行ant build失败?

标签 android python shell ant environment-variables

如果我在我的目录 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/

相关文章:

android - 检查类是 fragment 还是 Activity

android - 使用 OpenCV SVM 进行目标检测

python asyncore 在客户端连接后使用 100% CPU

python - pylint 如何记住之前运行的分数?

Bash:如何从参数设置变量,并使用默认值

java - 从崩溃中恢复/重新启动 java 守护进程

python - 如何调试使用 kivy 和推土机制作的我的 android 应用程序(apk)?每次都会崩溃?

android - 如何在android中使用HttpPost上传图片和视频文件

python - 计算整个 Pandas DataFrame 的出现次数

android - 执行 shell 命令并在 TextView 中获取输出