安装Android SDK工具版本14(ant-version时为ant版本1.8.2)在Android 4.0(ICS)上安装和测试我们的应用程序后,我注意到我们的自动构建脚本现在失败了.构建脚本正在执行一个ant命令来构建apk,在修改更新后抱怨build.xml文件已过期并执行ant更新项目-p来修复此问题.我们的项目有一个顶级项目和它引用的两个图书馆项目,都是用IntelliJ开发的.在删除旧的build.xml文件后,我在每个项目文件夹中运行了update project命令.现在我收到以下消息:
<SDK_DIR>/tools/ant/build.xml:466: The following error occurred while executing this line:
<SDK_DIR>/tools/ant/build.xml:539: The following error occurred while executing this line:
<SDK_DIR>/tools/ant/build.xml:568: null returned: 1
Run Code Online (Sandbox Code Playgroud)
我已经在下面包含了主项目和库项目build.xml文件的代码(每个都相同):
<?xml version="1.0" encoding="UTF-8"?>
<project name="LaunchActivity" default="help">
<loadproperties srcFile="local.properties" />
<property file="ant.properties" />
<loadproperties srcFile="project.properties" />
<fail
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
unless="sdk.dir"
/>
<import file="${sdk.dir}/tools/ant/build.xml" />
</project>
Run Code Online (Sandbox Code Playgroud)
使用新的project.properties文件(如下):AppMain(非库项目):
android.library.reference.1=../Common
android.library.reference.2=../facebook
# Project target.
target=Google Inc.:Google APIs:8
Run Code Online (Sandbox Code Playgroud)
共同(图书馆项目):
android.library=true
# Project target.
target=Google Inc.:Google APIs:8
Run Code Online (Sandbox Code Playgroud)
facebook(图书馆项目):
android.library=true
# Project target.
target=Google Inc.:Google APIs:8
Run Code Online (Sandbox Code Playgroud)
寻找一种方法来找出错误消息中的行号和/或运行中的问题.我还有一个build.properties文件,我已经将其包含在AppMain build.xml文件中,以指定用于创建签名apk的key.store key.alias值,我假设我可以在之后添加回build.xml这个问题已经解决了.
我发布的错误很模糊.再深入挖掘一下,我发现有一种方法可以指定一个Ant logFile.我这样做了,发现它在编译时爆炸了.事实证明,新的编译器并不像生成R类中的一些资源名称是相同的.我重命名了那些冲突的问题,并且在涉及更多编译问题之后(R.id.的案例陈述显然是在这个编译器版本中是禁止的)我能够让它工作.Ant LogFile绝对是调试此问题的方法.以下是我在发出ant release命令时用来生成logFile的内容:
ant -logfile //antLogFile.txt release -f ./AppMain/build.xml
| 归档时间: |
|
| 查看次数: |
5579 次 |
| 最近记录: |