Eclipse/Android:"错误运行构建器'Android Pre Compiler'项目......"

Mic*_*rne 97 eclipse android nullpointerexception adt

尝试在Android项目上做一些工作我已经工作了几个月,但每次我尝试构建项目时,Eclipse都会抛出一个对话框说:

'Building workspace' has encountered a problem

Errors occurred during the build.
Errors running builder 'Android Pre Compiler' on project 'XXX'
java.lang.NullPointerException
Run Code Online (Sandbox Code Playgroud)

我在带有Android项目构建目标4.0.3(API级别15)的Mac上运行Eclipse,我安装了以下版本的东西

  • Eclipse - 3.7.2
  • Android开发工具 - 21.0.1
  • Android SDK - 最多17个

我已经尝试过一些东西,比如启动一个全新的工作区,安装这个"Subversive SVN JDT Ignore Extensions",升级所有内容,确保我的源文件夹(或其他任何地方)没有任何没有扩展名的文件,确保我的Java编译器是1.6并重新打开它.

编辑

以下是Eclipse错误日志中针对此问题的堆栈跟踪:

java.lang.NullPointerException
at com.android.ide.eclipse.adt.internal.build.builders.PreCompilerBuilder.build(PreCompilerBuilder.java:673)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:513)
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:432)
at org.eclipse.ui.actions.BuildAction$1.runInWorkspace(BuildAction.java:305)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Run Code Online (Sandbox Code Playgroud)

会话数据:

eclipse.buildId=M20120208-0800
java.version=1.6.0_37
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments:  -keyring /Users/onemick/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -data /Projects/_EclipseWorkspace -keyring /Users/onemick/.eclipse_keyring -showlocation

另一个编辑

好的,所以更多的搜索引导我到这个页面,这表明这个问题肯定与我的项目中没有扩展名的文件的存在有关 - 但我不知道哪个文件和我的生活我找不到那项目中的任何一个!

如果有人能够解释这个错误的含义以及如何获得有关底层错误的更多调试信息,我甚至会很高兴.

Vad*_*tov 107

对于那些你不希望安装ADT的预览版谁,描述了一种解决办法在这里.

  1. 在Eclipse中打开项目的属性,然后打开资源 - >资源过滤器.
  2. 单击"添加..."按钮 - >选中"全部排除","文件和文件夹","所有子项".在文本输入框中输入".svn"(不带引号).
  3. 重启Eclipse.

我对.git文件夹有同样的问题,它就像一个魅力.


Mic*_*rne 84

我总是讨厌回答我自己的问题,但这是一个真正的解决方案.

21.0.1版本的ADT工具有一个错误,如果您有任何没有扩展名的文件,则会阻止项目构建.对于使用subversion并且具有无扩展文件的用户(像我一样),这是一个特殊问题.

一个推荐的解决方案是安装这些"颠覆性"Eclipse插件(帮助>安装新软件>使用Eclipse版本站点>展开'协作'>选择'颠覆SVN JDT忽略扩展'和'颠覆SVN团队提供商')但这没有对我有用(我在Indigo,也许在Juno上工作).

解决方案是从Google 安装ADT工具和SDK管理器的21.1 预览版.可以在这里找到明确的说明,你可以阅读所有背景,在这里愤怒的开发者群体添加你的声音.

  • 这确实解决了问题,请务必更新SDK*和*ADT. (4认同)
  • 如果在安装颠覆性插件后问题不会消失,请尝试以下操作:从工作区中删除项目,删除'bin'和'gen'文件夹并确保它们被排除在svn中,然后重新添加项目到工作区(文件>新建>项目,现有代码中的Android项目).如果现在命名不正确,请右键单击>重构>重命名.这为我解决了这个问题. (3认同)
  • 21.1已经出局,所以如果您不喜欢预览,可以升级到它. (3认同)

h2O*_*h2O 15

我刚刚重启Eclipse,问题就解决了.


arn*_*aki 9

我也有同样的问题,我意识到我已经关闭了另一个与我正在建设的项目相关的项目.一旦我打开它,一切都消失了.