【问题标题】:The Jar of this class file blongs to container Android 2.0.1 which does not allow modifications此类文件的 Jar 属于容器 Android 2.0.1,不允许修改
【发布时间】:2011-01-05 01:35:18
【问题描述】:

谁能给我这个错误的解决方案我已经搜索了很多这个问题但失败了

我正在使用带有 ADT 的 Eclipse

使用 android sdk 2.0.1
操作系统 Microsoft windows VIsta x86

【问题讨论】:

  • “adroid.jar 文件已经在其中”:它是 source jar 吗? (当您通过 winzip 或 7zip 或...打开它时,您是否在其中看到 .java 文件?)。如果没有,则需要获取源jar,并将其解压缩到预定义的路径中。如果是,您仍然需要将其解压缩到所述路径中。
  • @UMMA: 那就是你应该编辑“源附件”(如图所示)以引用正确的jar源或目录源。
  • @UMMA: androidforums.com/android-developers/… 应该在 git 前端有所帮助。

标签: java android eclipse


【解决方案1】:

这是article "Making Eclipse show Android’s source" (from Malcolm Rowe) help 吗? (SDK1.5,适配2.0)

一旦您有了源 JAR,您通常希望将其直接附加到 Eclipse 中的库中,但这不适用于 Android SDK。日食说:

“这个类文件的 JAR 属于容器‘Android 1.5’,它不允许修改其条目上的源附件。”

这是一种迂回的说法,源路径是固定的。
如果打开 Eclipse 项目属性对话框,切换到 Java Build Path 页面和 Libraries 选项卡,然后展开“Android 1.5”库容器和 android.jar 文件(呸!),您将看到'Source attachment' 选项,它显示了源的预期位置。

对于 Android 1.5 SDK,这是 SDK Location/platforms/android-1.5/sources(可能与 Android 1.1 目标类似),其中 SDK Location 是在“workspace preferences”Android 页面中设置的路径。
请注意,1.0 SDK(当然只支持 1.0 目标)只是将字符串源附加到 SDK 位置,假设 SDK 位置以斜杠结尾。 (如果您需要以 1.0 为目标,这应该只需要注意;我很确定它已在 1.1 SDK 提供的插件中修复。)

有两种方法可以将源 JAR 放到正确的位置。

  • 常规方法是在platforms/android-1.5/(或1.1)下创建一个名为sources/ 的目录,然后将JAR(只是一个ZIP 文件)解压缩到该目录中。
  • 然而,虽然sources没有扩展名,Eclipse实际上并不要求它是一个目录,所以一个更简单的方法是重命名你的源JAR,使它被称为sources,并将它移动到相关目录中.

将一个或多个文件移动到正确的位置后,您只需让 Eclipse 记下它。我发现只需重新启动 Eclipse 就足够了,但如果这不起作用,您可以随时尝试刷新项目,或者通过上下文菜单关闭并重新打开项目。

【讨论】:

  • 指导我多一点你讲的这个路径 常规的方法是在platforms/android-1.5/(或1.1)下创建一个名为sources/的目录,然后解压JAR(这只是一个 ZIP 文件)到该目录中。在我的情况下,它是 E:\Anroid\SDK\android-sdk_r04-windows\android-sdk-windows\platforms\android-2.0.1 并且 adroid.jar 文件已经在其中或者我还缺少什么??跨度>
  • 不行,你需要根据Android开源项目生成自己的源码JAR。阅读 VonC 链接到的完整文章。
  • 通过这样做,错误现在消失了,但另一个错误即将到来.. 你说什么?找不到源编辑源查找路径(写在按钮上)
  • @UMMA: 那就是你应该编辑“源附件”(如图所示)以引用正确的jar源或目录源。
  • 亲爱的朋友,我是java新手,你能指导我如何获得正确的jar文件吗??
【解决方案2】:

我们可以按照第一种方式得到它,详细展示:

my android.jar path is:/home/davidbei/developSW/DevTools/androidSDK/android-sdk_eng.davidbei_linux-x86/platforms/android-2.2.1/android.jar

so put the unzip sources folder into /home/davidbei/developSW/DevTools/androidSDK/android-sdk_eng.davidbei_linux-x86/platforms/android-2.2.1/sources, means apache-http,base&dalvik, those three folders in /home/davidbei/developSW/DevTools/androidSDK/android-sdk_eng.davidbei_linux-x86/platforms/android-2.2.1/sources.

that's all.  in windows it is the same, maybe ~~

【讨论】:

    猜你喜欢
    • 2012-04-21
    • 2016-05-05
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 2014-11-14
    • 2015-06-20
    • 1970-01-01
    • 2012-09-05
    相关资源
    最近更新 更多