`
huobengluantiao8
  • 浏览: 1077258 次
文章分类
社区版块
存档分类
最新评论

Android 无法查看外部依赖jar的源码的问题

 
阅读更多

在Eclipse中开发android的应用程序时,有时想查看函数的内部实现,但是当在函数上点击ctrl和鼠标左键的时候,

往往出现如下提示:

Class File Editor

Source not found

The JAR of this class file belongs to container 'Android' which does not allow modifications to source attachments on its entries.

因此按照如下操作添加对应的源代码:

选择workspace 里面的项目,点击右键--->Build Path-->configure build path -->liberaries-->选择一个jar包--->点击左侧的展开三角按钮--->

展开后选择Source attachment --->点击右侧的 Edit 按钮--->弹出对话框,并选择External File---->找到指定的源文件压缩包。或者可使用外部源文件目录。点击OK。

进去以后发现还是不能查看,同样的提示!

仔细读英文的后半部分,在libs中直接引用的第三方jar包不让其做任何修改。包括添加源文件参看。

因此在android工程下新建一个lib目录,将jar包从libs转移到lib中。然后重复以上过程。

结果就可以查看了!不过一运行你的程序,马上报错无法找到class的错误。 = =! 死胡同了~

看来只能将第三方jar放到libs了。

有的牛人这样解决了:

In order to link thesources and javadocto a .jar library that is automatically linked by Eclipse you have to do the following.

  1. Place all three .jar files in the libs folder.
  2. Create.propertiesfile in the libs folder with the name of the library .jar (see example).
  3. Specify the relative paths to the sources and javadoc .jar in the .properties file.
  4. Closeand re-open the Eclipse project! Optionally refresh the project.
  5. Select an object of the linked library in the source code.
  6. Open the Javadoc view in Eclipse to check the documentation (see screenshot).
  7. Open the source code declaration (default shortcut:F3) of the selected object.

Example:GSON library

/libs/gson-2.2.2.jar
/libs/gson-2.2.2.jar.properties
/libs/gson-2.2.2-javadoc.jar
/libs/gson-2.2.2-sources.jar

Contents of gson-2.2.2.jar.properties

src=gson-2.2.2-sources.jar
doc=gson-2.2.2-javadoc.jar

You can of course move the javadoc and sources .jar into other folders and specify relative paths. That's up to you.

enter image description here

但是遗憾的是,弄了半天都没能解决。可能也跟我用的第三方的jar包不规范的原因,而且我没有doc文件。


最终,我想到了一个解决办法:

新建一个lib目录

将需要的jar包全部拷贝到该目录下

依次对每个jar包执行 上面绿色 部分操作

完成后右键lib目录,点击build path--> use as source folder

即可解决查看源码的问题,也可使程序正常执行。






分享到:
评论

相关推荐

    Android可用的14个jar包

    在Android开发过程中,有时我们需要引入外部的jar包来扩展功能或使用特定的库。"Android可用的14个jar包" 提供了一组资源,尽管它们可能比较老旧,但仍然包含了许多经典和基础的库,对于理解Android开发中的类库使用...

    Launcher依赖的jar包

    描述中的"Launcher2 Android4.4版本源码导入eclipse需要依赖的jar包"指的就是这个关键点。 在Eclipse中开发Android项目时,`.jar`文件作为外部库被添加到构建路径中。对于`Launcher2`,这些依赖可能包括但不限于: ...

    自己把源码生成jar,在android项目中调用

    4. **处理依赖**:如果Java项目有外部依赖,你需要将它们的JAR文件一起打包,或者创建一个包含所有依赖的fat JAR(也称为uber JAR)。使用工具如Apache Ant的`jar`任务或Maven的`shade`插件可以实现这一点。 5. **...

    Android电脑源码通过adb实现实时屏幕演示

    本资源"Android电脑源码通过adb实现实时屏幕演示"提供了一个独特的视角,让我们可以通过ADB(Android Debug Bridge)工具来实时查看设备或模拟器的屏幕内容。这个功能在调试、远程协作或者教学场景中非常实用。 ...

    android入门课程大全(含源码)

    5. `libs`:存放项目依赖的外部jar包。 6. `assets`:用于存放原始数据文件,如音频、文本等。 7. `bin`:编译后的输出目录,包含APK文件。 8. `AndroidManifest.xml`:应用程序的核心配置文件,声明组件、权限和...

    Android在路上项目APP源码.zip

    8. **libs**:可能包含外部库的jar或aar文件。 通过深入研究这些文件,开发者可以了解到Android应用的架构设计、模块划分、功能实现方式以及优化策略等。同时,这也为想要提升Android技能的开发者提供了一个实战...

    Android应用源码之疯狂足球源码.zip

    通过这个文件,开发者可以管理项目的外部依赖。 2. **.project**:这也是Eclipse项目文件,它包含了项目的构建设置、自定义构建命令以及其他元数据。此文件帮助IDE识别项目类型和配置,使得开发者可以使用IDE的各种...

    Android 发送电子邮件 EMAIL 源码

    这个源码示例将教你如何在不依赖外部应用的情况下,通过代码实现邮件发送。以下是对这个"Android发送电子邮件EMAIL源码"的详细解析。 首先,我们需要理解Android系统中发送邮件的基本流程。这通常涉及到以下几个...

    android 混淆 去除第三方jar

    标题提到的“android 混淆 去除第三方jar”,意味着我们需要处理包含在项目中的外部库(jar包)。处理第三方jar的混淆通常包括以下步骤: 1. **配置ProGuard规则**:在`proguard.cfg`或`build.gradle`文件中添加...

    安卓Android源码——完美!SlidingMenu jar包版demo!不用导包!兼容2.2.rar

    同时,这也为开发者提供了一个实践机会,学习如何优化代码以减少外部依赖。 总结,这个压缩包提供的SlidingMenu Demo为开发者提供了一个无需额外导入库的Android滑动菜单实现,适用于各种版本的Android系统,尤其...

    android应用源码精同城打工源码.zip

    7. **库文件**:可能有一些外部依赖的JAR或AAR文件,它们提供了额外的功能,如网络请求、数据库操作等。 8. **图片和媒体文件**:应用可能包含各种图片、音频或视频文件,用于增强用户体验。 9. **测试代码**:...

    Android项目仿iPhone风格对话框示例,Jar包及源码.rar

    - 当引入外部库时,确保它与当前项目的Android版本兼容,避免出现兼容性问题。 - 对话框的使用应谨慎,避免过度使用导致用户界面混乱。 - 尽量遵循Android Material Design指南,以提供更一致的用户体验。 总之...

    Android程序研发源码Android Email程序源码.rar

    6. **lib**:这个目录通常包含项目的外部库或依赖的JAR文件。 7. **src**:这是源代码的主要存放地,包含了应用的Java代码,每个类文件对应一个Android应用的组件,如Activity、Service、BroadcastReceiver等。 8....

    (缺少jar包)Android项目源码打造自己的csdn客户端.rar

    描述提到"缺少jar包",这意味着项目源码可能依赖于外部的Java库文件(jar包),这些文件在提供的压缩包中没有包含,开发者需要自行寻找并添加。此外,“太多无法一一验证是否可用”暗示源码可能包含多个组件或功能,...

    Android使用mail.jar实现后台发送邮件

    1. 引入依赖:将这三个jar文件添加到Android项目的libs目录,并在构建配置中声明它们为外部库。 2. 初始化Session:创建一个`Properties`对象,设置邮件服务器的相关属性,如SMTP服务器地址、端口号、用户名和密码...

    android 4.0lanucher2需要的jar包

    在导入`launcher2`时,你会注意到一些外部库,这些库通常以jar包的形式存在。这些jar包是Android SDK的一部分,可能包括Android框架API、支持库或者其他系统服务的实现。例如,`libcore.jar`包含了Java核心库的本地...

    Android 一个读取和显示pdf文件的库 源码

    本篇文章将详细讲解基于Android的一个开源库——Android-Pdf-Viewer-Library,它是一个用于在Android设备上查看PDF文档的源码库。 Android-Pdf-Viewer-Library是由James Blough开发的,它提供了方便的API接口,让...

    Android studio 配置gradle 2.2.2 插件所需pom、jar文件

    总之,Android Studio配置Gradle 2.2.2涉及到下载和配置jar和pom文件,通过这些文件,Android Studio能够理解和执行构建过程,管理依赖,并确保项目的顺利构建。随着开发需求的变化,了解和掌握Gradle的配置和使用至...

    导入jar的问题

    本文将详细讨论“导入jar的问题”,以及如何在Android开发环境中添加外部jar。 首先,理解jar文件的本质是至关重要的。jar文件是Java的一种归档格式,它包含了一系列编译后的.class文件,这些文件代表了Java应用...

    Android程序研发源码Android 腾讯微博客户端源码.zip

    而"3个jar包.rar"则可能包含了项目依赖的外部库或组件,这些库可能涉及网络通信、数据解析、图片加载等功能。 1. **UI设计与实现**:在源码中,我们可以看到腾讯微博客户端是如何使用Android的布局文件和自定义View...

Global site tag (gtag.js) - Google Analytics