9

在构建我的 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:返回空值: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。这是日志文件。

-设置模式检查:

-设置发布模式:

-release-obfuscation-check: [echo] proguard.config 是 C:\adt-bundle-windows-x86_64-20130522\sdk/tools/proguard/proguard-android.txt:proguard-project.txt [echo] Proguard.config已启用

-预构建:

-check-env: [checkenv] Android SDK Tools Revision 22.6.2 [checkenv] 安装在 C:\adt-bundle-windows-x86_64-20130522\sdk

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

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

节点:

-设置模式检查:

-设置发布模式:

-release-obfuscation-check: [echo] proguard.config 是 C:\adt-bundle-windows-x86_64-20130522\sdk/tools/proguard/proguard-android.txt:proguard-project.txt [echo] Proguard.config已启用

-预构建:

-check-env: [checkenv] Android SDK Tools Revision 22.6.2 [checkenv] 安装在 C:\adt-bundle-windows-x86_64-20130522\sdk

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

-build-setup:[getbuildtools] 使用最新的构建工具:19.0.3 [echo] Resolving Build Target for facebook... [gettarget] 项目目标:Android 2.3.3 [gettarget] API 级别:10 [echo] --- ------- [echo] 如果需要,创建输出目录... [mkdir] 创建目录:C:\Users\brian.lee\Desktop\Eclipse Workspace\chumba_connect_trunk_new\facebook-android-sdk-3.14.1\ facebook\bin\rsObj [mkdir] 创建目录:C:\Users\brian.lee\Desktop\Eclipse Workspace\chumba_connect_trunk_new\facebook-android-sdk-3.14.1\facebook\bin\rsLibs [echo] ----- ----- [echo] Resolving Dependencies for facebook... [dependency] Library dependencies: [dependency] No Libraries [dependency] [dependency] ------------------ [依赖性] API<=15:将 annotations.jar 添加到类路径。

-code-gen: [mergemanifest] 找到已删除的目标文件 [mergemanifest] 将 AndroidManifest 文件合并为一个。[mergemanifest] 清单合并已禁用。仅使用项目清单。[echo] 处理aidl 文件... [aidl] 没有要编译的AIDL 文件。[echo] ---------- [echo] 处理 RenderScript 文件... [echo] ---------- [echo] 处理资源... [aapt] 生成资源 ID。 .. [aapt] 资源目录名无效:C:\Users\brian.lee\Desktop\Eclipse Workspace\chumba_connect_trunk_new\facebook-android-sdk-3.14.1\facebook\bin\res/crunch

BUILD FAILED C:\adt-bundle-windows-x86_64-20130522\sdk\tools\ant\build.xml:601:执行此行时出现以下错误: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

总时间:2秒

我所有的尝试都没有取得任何进展。为什么会出现这个错误?我必须做什么才能成功构建?

4

7 回答 7

31

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

于 2014-05-21T05:12:22.977 回答
4

对我来说:我有

错误地编辑了我的 config.xml

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

于 2014-09-10T16:36:52.990 回答
2

For me, conflicting build targets were at fault. Needed to change project.properties in my library directory (which was appcompat) to 'target=android-21', instead of android-19 which I had before. If you encounter a similar error and the previous answer (ant clean) does not work, check all the build targets.

于 2014-12-13T18:33:04.353 回答
2

验证您的JAVA_HOME变量是否正确设置为某个路径C:\Program Files\Java\jdk1.7.0_67\,如果错误仍然存​​在,则可以通过build.xml并将变量设置为truefork或传递的变量来解决,这会将fork的值设置为${need.javac.fork}

fork="${need.javac.fork}"

于 2014-11-25T17:43:37.940 回答
0

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

  • 打开终端
  • 类型cordova create foo; cd foo;
  • 类型cordova platform add android
  • 类型cordova build

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

添加图标的正确方法是在项目 foo/{res/android/icon*.png} 的根目录下创建文件夹 res

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

<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>
于 2015-01-14T10:15:28.360 回答
0

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

于 2014-10-01T22:33:01.870 回答
-1

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

转到项目中的框架目录,然后键入这些命令来构建 jar 文件(您需要ant安装才能生成 jar 文件,但它应该已经在您的系统上):

android update project -p . -t android-23

ant jar

所以只要确定你有什么类型的安卓,因为你可能已经尝试过android-19

于 2016-02-17T21:20:22.280 回答