21.0.1 android sdk 上的 Android 预编译器错误

Posted

技术标签:

【中文标题】21.0.1 android sdk 上的 Android 预编译器错误【英文标题】:Android Pre Compiler error on 21.0.1 android sdk 【发布时间】:2012-12-20 18:02:03 【问题描述】:

我在另一台电脑上查看了旧的 android 项目,我得到了一个 Android Pre Compiler Null 指针异常错误,每次保存时都无法生成 R.java。该项目是使用其他库的库项目。

项目不起作用的新系统是: 64位的Ubuntu, ADT 日食, 安卓 SDK 工具 21.0.1, Android sdk 平台工具 16 错误是:

!ENTRY org.eclipse.core.resources 4 2 2013-01-07 02:07:15.177 !MESSAGE 调用代码时出现问题 插件:“org.eclipse.core.resources”。 !堆栈 0 java.lang.NullPointerException 在 com.android.ide.eclipse.adt.internal.build.builders.PreCompilerBuilder.build(PreCompilerBuilder.java:673) 在 org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728) 在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239) 在 org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292) 在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295) 在 org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351) 在 org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374) 在 org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) 在 org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) 在 org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

!ENTRY org.eclipse.core.resources 4 75 2013-01-07 02:07:15.717 !MESSAGE 在构建过程中发生错误。 !子条目 1 com.android.ide.eclipse.adt 4 75 2013-01-07 02:07:15.717 !MESSAGE 在项目“MyProject”上运行构建器“Android Pre Compiler”时出错。 !STACK 0 java.lang.NullPointerException 在 com.android.ide.eclipse.adt.internal.build.builders.PreCompilerBuilder.build(PreCompilerBuilder.java:673) 在 org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728) 在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239) 在 org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292) 在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 在 org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295) 在 org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351) 在 org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374) 在 org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) 在 org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) 在 org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

该项目在旧系统上运行:

旧系统是: 32位的Ubuntu, 4.2.1 日食朱诺, 安卓sdk工具21,

Git 被用作版本控制系统。 这是一个非常奇怪的问题,我检查了所有的 xml,用 lint 运行它们以找到 xml 构建问题,但每次保存都没有运气,我有同样的错误,并且没有生成 R.java。谢谢

【问题讨论】:

Arrgh.. 我有同样的问题,但奇怪的是它只发生在我在工作区中的两个项目之一。我在 Win7 64 位,ADT v21.0.1-543035 和 Eclipse Juno。 在 mu 的情况下,项目是库项目还是使用库? 不是库项目,只是两个独立的独立应用程序。 【参考方案1】:

21.0.1 中的 Android 预编译器似乎严重损坏,在 .svn 目录和 .DS_Store 文件以及没有文件扩展名的文件上崩溃。

对我有用的解决方案是按照以下步骤升级到 21.1 rc1: 1. 按照此处的说明进行操作:http://tools.android.com/preview-channel 2. 确保更新 SDK Manager 和 ADT 3.重启Eclipse

查看此错误以获取更多信息: http://code.google.com/p/android/issues/detail?id=42051

【讨论】:

难以置信。他们不能彻底测试他们发布的内容吗?感谢您的信息。 @Yar,ADT 是一个漏洞百出的程序,因为它只是合适的 Android Studio 的权宜之计。【参考方案2】:

您可以在每个src 文件夹属性中添加一个资源过滤器,以避免自动包含项目中不需要的文件。 SVN 文件确实会导致该版本中的 Android 预编译器崩溃。

你应该点击添加并选择:排除所有/*文件和文件夹*/所有子项(递归)/然后写@987654322 @ 在编辑框中。单击确定以保存过滤器。您可能需要干净的项目。

【讨论】:

我不确定这是否修复了它,但在添加此资源过滤器并重新启动 (!) eclipse 后,我不再收到此错误。 很好的解决方法!谢谢!至于 Thomas,它在重新启动 Eclipse 后对我有用。 试图解决删除项目中每个 .svn 文件夹的问题,但没有成功。只是为了试一试,我添加了过滤器,然后……瞧!刚刚清理了项目,建筑商就不再抱怨了!非常感谢! 这对我有用,但在它这样做之前我也必须重新启动 Eclipse。 为我工作。我没有使用 svn 而是 git,在安装 Google Play 服务并“推送”我的代码后,我开始收到错误。【参考方案3】:

在我的情况下,问题是由 src 文件夹中的 .svn 子文件夹引起的。我按照评论 6 中的建议为我解决了这个问题:http://code.google.com/p/android/issues/detail?id=42051

【讨论】:

现在我也使用 git,但是我的源代码的原作者在那里留下了一些 svn 文件。还要检查您的所有源文件是否具有正确的扩展名,这可能是我在论坛上阅读的此类错误的另一个可能原因。无论如何,祝你好运!【参考方案4】:

我解决了安装 eclipse Juno 的问题并下载了 Android sdk 21 工具而不是 sdk 工具 21.0.1,它接缝我将跳过 21.0.1。 所以对我来说,现在 ecrise form android 是个坏主意。

【讨论】:

【参考方案5】:

在 ADT 21.0.1 上也遇到了很多困难,还原对我有帮助: Eclipse -> 关于 -> 安装详细信息 -> 安装历史 -> 选择 Android 版本为 21.0.0 的条目 -> 按还原。

【讨论】:

呃,我已经安装了 Blackberry 10 插件以及 Amazon Mobile SDK 插件,这不是一个解决方案。

以上是关于21.0.1 android sdk 上的 Android 预编译器错误的主要内容,如果未能解决你的问题,请参考以下文章

Mac 上的 React Native:SDK 目录“/Users/username/Library/Android/sdk”不存在

Android上的Unity Facebook SDK登录错误

Android学习—— Android SDK

Android Studio - Windows 7 上的 Android SDK 问题

Android Studio - Windows 7 上的 Android SDK 问题

你好,我打开了Android SDK and AVD Manager,里面的Available packages里的工具包不全,怎么补充下载?