Android SDK内容加载程序无法使用NullPointerException

我最近刚刚在Eclipse Helios中与Android SDK和AVD Manager进行交互时发生错误

我已经尝试重新安装Eclipse插件和Android SDK,但无济于事。

如果我去“已安装的软件包”页面,点击刷新(或安装或删除一个软件包),我得到一个popup框说

'Android SDK Content Loader' has encountered a problem. parseSdkContent failed java.lang.NullPointerException. 

这里是完整的日志:

堆栈跟踪

 java.lang.NullPointerException at com.android.ide.eclipse.adt.internal.sdk.Sdk.loadTarget(Unknown Source) at com.android.ide.eclipse.adt.AdtPlugin$10.run(Unknown Source) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 

会话数据

 eclipse.buildId=M20100909-0800 java.version=1.6.0_20 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_IE Framework arguments: -product org.eclipse.epp.package.java.product Command-line arguments: -os linux -ws gtk -arch x86 -product org.eclipse.epp.package.java.product 

有没有其他人最近遇到这个? 它似乎并没有影响实际的Android开发,但它只是一个恼人的。

问题出在位于Windows机器上的...\<user-profile>\.android your-avd-name.ini (如果你是Windows用户)的your-avd-name.ini中。 在avd.iniparsing器中发生任何错误时,Google ADT插件会尝试访问为空的映射。 解决方法是删除有问题的.ini文件并重新创build您的avd(s)。

此信息张贴在这里: http : //community.developer.motorola.com/t5/MOTODEV-Studio-for-Android/Android-SDK-Content-Loader-has-encountered-a-problem/td-p/6565

我通过删除我的用户configuration文件中的.android目录解决了这个问题。

解:

第1步 。 find名为:> .android的文件夹

该文件夹可以位于Windows用户目录中,例如在Windows 7/8中:

C:\用户\ YOUR_WINDOWS_USERNAME.android

第2步 。 删除这个文件夹.android

第3步 。 重新启动Eclipse,现在就可以了

我通过从工作区删除.metadata文件夹解决了这个问题

转到C:/Users/<profile-name>/.avd并删除AVD.ini文件。重新启动Eclipse ..否则,如果您不知道要删除的文件或上述解决scheme不适合您,删除整个创build的AVD夹..并重新启动Eclipse。

问题出在您的Windows机器上的.android (search它)(如果您是Windows用户) your-avd-name.ini(configuration文件 )。 在avd.iniparsing器中发生任何错误时,Google ADT插件会尝试访问为空的映射。 解决方法是删除有问题的.ini文件并重新创build您的avd(s)。

尝试从.android文件夹中删除

 C:\Users\Your User Name\.android 

并打开你的eclipse,并按照这个结构来configuration您的SDK安装新SDK或从安装

我相信麻烦在于你的ADT工具。 如果你已经运行eclipse插件更新(这将更新ADT),问题就解决了。

当我为虚拟设备select不正确的值时,如果这个不正确的值导致AVD启动时蓝屏死机,我有时会得到这个parseSdkContent failed问题:在计算机重新启动崩溃后,启动Eclipse时出现“parseSdkContent failed”错误。

这会给你各种各样的错误,一点也不能给你提供任何线索,从你可能试图重新安装Eclipse甚至Java的所有错误,但不这样做,它可以更简单。

我的解决scheme非常简单:删除.Users \ .android文件夹中的.avd文件夹和.i​​ni文件。

因此,备份您的AVD是一个好主意,因为如果在启动过程中与Besod崩溃,它会被损坏。

好吧,我不知道我做了什么,但我使用了独立的AVDpipe理器(从命令行/ tools / android),除了“Android SDK工具,修订版2”以外,还没有安装。 然后重新安装我想要的部分,错误似乎已经消失..困惑!

由于某些原因,我的sdk / addons和sdk / platforms目录被破坏且无法读取(电脑崩溃),这导致我的“Android SDK Content Loader”遇到了问题。 错误。

不得不删除/重命名整个sdk文件夹,再次下载并安装sdk +包。 在用户/ .android一切都很好。

对我来说, NullPointerException问题的根源是一个主机端的Junittesting项目,它引用(和testing)Android项目中的代码。 它没有一个project.properties文件。 这不是一个Android项目,但由于某种原因,较新版本的SDK以某种方式期待该文件。 为了解决这个问题,我只是从一个Android项目复制一个project.properties文件到主机unit testing项目。

首先从命令行启动模拟器

 emulator -avd yourDeviceName 

在上面的步骤之后,我的日食开始好了。

更新:

除了重新开始之外,没有完美的解决scheme。 问题仍然是开放的。

我的解决scheme只是去帮助 – >寻找更新 – >并安装所有android相关的更新。 一旦完成,我重新启动Eclipse,它告诉我,我需要启动SDKpipe理器来更新一些东西,我点击了“Open SDK Manager”button,它显示了我,更新了开发工具,平台工具,添加了一些最新的API和中提琴,一切皆好 :)

试着删除.android文件夹内的avd文件夹,这个文件夹也可能在path中有你的sdk文件夹。 只要删除avd文件夹,并尝试在eclipse> preference> android中configurationsdk的urpath。 然后尝试通过单击avdpipe理器,然后添加一个新名称,然后单击开始添加一个新的avd在eclipse中configuration您的新avd。 Ur新AVD设备将启动。

干杯普拉卡什

我删除了Windows用户的.android。 如果adb正在运行,请通过adb kill-server来停止它,然后删除该文件夹。 这对我工作我在窗口7上使用adt-bundle-windows-x86。

问题是与AVD。 AVD保存在.android文件夹下,所以在新安装adt-bundle-windows-x86之后,我们也需要删除这个文件夹。

我在Windows 7上; ADT提供的Eclipse首次启动时出现此错误。 我的特定变体引用了无法写入我的C:驱动器上的位置。 我使用上面的.metadata技巧解决了这个问题。 那么我select了“以pipe理员身份运行”,之后一切正常。

我已经通过删除在“C:\ Users \ EAST.android \ avd”中新创build的AVD(Android虚拟设备)解决了这个问题,其中\ EAST是我的用户名,在avd文件夹中,您将为每个设备find两个文件夹,例如myDevice .avd和myDevice.ini删除这两个文件并重新运行eclipse

通过在工作区中删除元数据和.Android解决了这个问题

将以下行添加到.bashrc文件。

 export PATH=${PATH}:~/android-sdk-linux/tools export PATH=${PATH}:~/android-sdk-linux/platform-tools 

将“〜/ android-sdk-linux”replace为保存了sdk文件夹的path。

这是一个解决方法(不完全是解决scheme)。 在“ 窗口”>“首选项”>“Android”>“Lint错误检查”中 ,取消选中“保存文件时检查错误”。 我相信这可能适合你。

有类似的问题。 从一天到另一天,我无法启动我的(迄今)良好的工作的应用程序。 popup“SDK Content Loader”和“NullPointerException”错误。 在这里阅读答案,但不想删除我的.android或.metadata。 我试图清理我的项目和 – 达达 – 它的工作。

所以,在你开始删除你的插件和东西之前。 尝试一个干净的或重新启动并清理。 也许这将已经解决了你的问题。 ;)