构建引用build.xml和proguard文件的错误:" null返回:1"

时间:2014-05-20 07:20:16

标签: android cordova proguard build.xml

在构建我的PhoneGap应用程序时(安装了Facebook SDK插件),我遇到了这个错误:

  

建立失败   C:\ adt-bundle-windows-x86_64-20130522 \ sdk \ tools \ ant \ build.xml:653:执行此行时发生以下错误:   C:\ adt-bundle-windows-x86_64-20130522 \ sdk \ tools \ ant \ build.xml:698:null返回:1

第653行是:

<do-only-if-manifest-hasCode elseText="hasCode = false. Skipp aidl/renderscript/R.java">

第698行是:

proguardFile="${out.absolute.dir}/proguard.txt"

到目前为止,我的解决方案包括以下内容:

  1. 启用android update project以强制生成proguard-project.txt文件,以及更新local.propertiesproject.properties文件。
  2. 已修改C:\adt-bundle-windows-x86_64-20130522\sdk\tools\ant\build.xml,以便所有提及proguard.txt成为proguard-project.txt
  3. ant -logfile ./antLogFile.txt release。这是日志文件。
  4.   

    -set模式检查:

         

    -set释放模式:

         

    - 释放-混淆检查:        [echo] proguard.config是C:\ adt-bundle-windows-x86_64-20130522 \ sdk / tools / proguard / proguard-android.txt:proguard-project.txt        [echo] Proguard.config已启用

         

    -pre-构建:

         

    -check-env:[checkenv] Android SDK工具修订版22.6.2 [checkenv]安装在C:\ adt-bundle-windows-x86_64-20130522 \ sdk

         

    -setup:        [echo]项目名称:HelloWorld [gettype]项目类型:应用程序

         

    -build-setup:[getbuildtools]使用最新的构建工具:19.0.3        [echo]为HelloWorld解析构建目标... [gettarget]项目目标:Android 2.3.3 [gettarget] API级别:10   [gettarget]警告:AndroidManifest.xml中的属性minSdkVersion   (14)高于项目目标API级别(10)        [回声] ----------        [echo]如果需要,创建输出目录......        [回声] ----------        [echo]解析HelloWorld的依赖... [依赖]库依赖:[dependency] [dependency] ------------------   [依赖]有序库:[依赖] [依赖]   ------------------ [dependency] API&lt; = 15:将annotations.jar添加到类路径中。        [回声] ----------        [echo]使用'release'构建库...

         

    nodeps:

         

    -set模式检查:

         

    -set释放模式:

         

    - 释放-混淆检查:        [echo] proguard.config是C:\ adt-bundle-windows-x86_64-20130522 \ sdk / tools / proguard / proguard-android.txt:proguard-project.txt        [echo] Proguard.config已启用

         

    -pre-构建:

         

    -check-env:[checkenv] Android SDK工具修订版22.6.2 [checkenv]安装在C:\ adt-bundle-windows-x86_64-20130522 \ sdk

         

    -setup:        [echo]项目名称:facebook [gettype]项目类型:Android库

         

    -build-setup:[getbuildtools]使用最新的构建工具:19.0.3        [echo]解析facebook的Build Target ... [gettarget]项目目标:Android 2.3.3 [gettarget] API级别:10        [回声] ----------        [echo]如果需要,创建输出目录......       [mkdir]创建目录:C:\ Users \ brian.lee \ Desktop \ Eclipse Workspace \ chumba_connect_trunk_new \ facebook-android-sdk-3.14.1 \ facebook \ bin \ rsObj       [mkdir]创建dir:C:\ Users \ brian.lee \ Desktop \ Eclipse Workspace \ chumba_connect_trunk_new \ facebook-android-sdk-3.14.1 \ facebook \ bin \ rsLibs        [回声] ----------        [echo]解析facebook的依赖关系... [依赖]库依赖关系:[依赖]无库[依赖]   [dependency] ------------------ [dependency] API&lt; = 15:添加   annotations.jar到类路径。

         

    -code-gen:[mergemanifest]发现已删除的目标文件[mergemanifest]将AndroidManifest文件合并为一个。 [mergemanifest]清单   合并失效。仅使用项目清单。        [echo]处理aidl文件......        [aidl]没有要编译的AIDL文件。        [回声] ----------        [echo]处理RenderScript文件......        [回声] ----------        [echo]处理资源......        [aapt]生成资源ID ...        [aapt]无效的资源目录名称:C:\ Users \ brian.lee \ Desktop \ Eclipse   工作空间\ chumba_connect_trunk_new \ Facebook的Android的SDK-3.14.1 \实\ BIN \ RES /紧缩

         

    建立失败   C:\ adt-bundle-windows-x86_64-20130522 \ sdk \ tools \ ant \ build.xml:601:The   执行此行时发生以下错误:   C:\ adt-bundle-windows-x86_64-20130522 \ sdk \ tools \ ant \ build.xml:653:The   执行此行时发生以下错误:   C:\ ADT-束 - 窗口x86_64-20130522 \ SDK \工具\蚂蚁\的build.xml:698:   null返回:1

         

    总时间:2秒

    我的所有尝试都没有取得任何进展。 为什么会出现此错误?我该怎样做才能成功建立?

7 个答案:

答案 0 :(得分:31)

关闭Eclipse,然后在项目文件夹中运行ant clean

答案 1 :(得分:4)

对我来说:我有

  

错误地编辑了我的config.xml

。尝试撤消编辑或放置通用config.xml,然后查看她是否构建。

答案 2 :(得分:2)

验证您的JAVA_HOME变量是否已正确设置为C:\Program Files\Java\jdk1.7.0_67\之类的路径,如果错误仍然存​​在,则可以通过 build.xml 进行设置并进行设置 true 到变量fork,或传递的变量${need.javac.fork},它将 fork 的值设置为:

  

叉= “$ {need.javac.fork}”

答案 3 :(得分:2)

对我而言,冲突的构建目标是错误的。需要将我的库目录(这是appcompat)中的project.properties更改为&#39; target = android-21&#39;,而不是之前的android-19。如果遇到类似的错误并且之前的答案(ant clean)不起作用,请检查所有构建目标。

答案 4 :(得分:0)

您可能还想确保local.properties具有sdk的路径: sdk.dir=/path/to/adt/sdk

答案 5 :(得分:0)

为了确定问题是来自您的开发环境还是来自项目中的错误,我建议所有人尝试从cordova CLI创建一个新项目。

  • 打开终端
  • 输入cordova create foo; cd foo;
  • 输入cordova platform add android
  • 输入cordova build

有效吗?所以问题出在您的项目配置上。 这是我的错误: 为了向应用程序添加图标,我在`foo / plataforms / android / res / {android / icon * .png}中创建了一个名为android的文件夹

添加图标的正确方法是在项目的根目录中创建文件夹res 富/ {RES /机器人/图标* .PNG}

然后,将此文件添加到配置文件中,如下所示:

<platform name="android">
              <icon src="res/android/icon@ldpi.png" density="ldpi" />
              <icon src="res/android/icon@mdpi.png" density="mdpi" />
              <icon src="res/android/icon@hdpi.png" density="hdpi" />
              <icon src="res/android/icon@xhdpi.png" density="xhdpi" />
     </platform>

答案 6 :(得分:-1)

我有同样的问题,我这样解决了:

转到项目中的framework目录,然后键入这些命令来构建jar文件(您需要安装ant来生成jar文件,但它应该在您的系统上):< / p>

android update project -p . -t android-23

ant jar

因此,请确保您使用的是什么类型的Android,因为您可能已尝试android-19