将源代码附加到外部库非常棒。在哪里可以找到 v4支持包的源代码?最好是一个 zip 文件,可以很容易地附加到android-support-v4.jar
Eclipse 中。
9 回答
我只想添加另一种为支持库附加源的方法。它需要版本 20 或更高版本的 ADT。假设此方法适用于容器禁用设置源/javadoc 位置的所有 JAR。这是您需要做的:
该
android-support-v4.jar
库位于libs
项目的目录中。在同一目录中创建一个常规 Java 属性文件,该文件的名称与所讨论的 JAR 完全相同,但带有附加.properties
扩展名。因此,对于我们的支持库,它将是:
android-support-v4.jar.properties
.打开创建的属性文件并将名为的属性值设置为
src
可以找到该库的源的位置。您的文件应该有一行,如:src=c:/apps/adt-bundle-windows-64bit/sdk/extras/android/support/v4/src
保存文件。
关闭并重新打开您的 android 项目。
尝试浏览到支持类之一。源附件现在应该可以工作了。
在我的情况下工作得很好。
需要注意的一点:如果src
不是绝对路径,则会从 JAR 文件的父目录开始解析。以支持库为例——如果src=support/src
,ADT 将假定类源位于libs/support/src
.
可以在此处找到由其作者编写的此功能的简短描述。
如果有人对这个文件的处理方式感兴趣.properties
,我建议阅读补丁集#4,尤其是。变化eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/ internal/project/LibraryClasspathContainerInitializer.java
:)
编辑
另请参阅 WindRider 关于在具有多个引用库的项目中正确添加源的精彩评论。
这里附上Eclipse Juno中支持库的源码的解决方案
我想您的项目已经android-support-v4.jar
在“Android Dependencies”下的“Build Path”中,但您不能将源目录附加到它。(“来源附件”表示“不可修改”)。解决方案:
- 转到“配置构建路径”
- 添加外部 JAR >
YourProject/libs/android-support-v4.jar
(我知道您的项目已经引用了它,但不用担心,只需再次添加它)。 - 展开 jar 并将 Source 附加到 External Jar:
android-sdk/extras/android/support/v4/src
- 切换到“Order and Export”选项卡,拉起“Android Dependencies”上方的外部jar
享受使用源代码浏览支持库!
如果您附加了一个“Android 测试项目” YourProject
,则YourProjectTest
可能不再编译。在这种情况下,您必须返回“Order and Export”并拉下“Android Dependencies”下方的外部 jar 才能恢复正常。
从 Android SDK Manager 下载支持包后,您可以在文件夹 <android-sdks>/extras/android/support/v4/src 中找到支持包的源代码。
参考接受的答案,也可以直接从目录附加源而不构建 .jar 文件。从 Java 构建路径/库选项卡中,展开 android-support-v4.jar,突出显示“源附件”,单击“编辑...”,“外部文件夹...”,然后指向 (android-sdk)\extras\安卓\支持\v4。
这是使用 eclipse indigo 测试的。
从评论:
如果您的支持库位于项目的“Android Dependencies”文件夹中,似乎会出现无法将源添加到支持库的问题。解决方法是从相同的“Java 构建路径/库”选项卡单击“添加外部 JAR...”并在 (android-sdk)\extras\android\support\v4 路径中找到 .jar 文件。然后它将出现在您的项目设置中的新“引用库”文件夹下。
对于喜欢标准的人来说,有源代码的jar文件,这样更方便源代码管理和项目共享。
例如:
../android-support-v4.jar
../android-support-v4-src.jar
创建源 jar 文件并附加它很简单:
- cd 到 path_to_android_sdk/extras/android/compatibility/v4/
- 使用您喜欢的 zip 程序(例如 7-zip)创建一个 zip 文件并将其命名为 android-support-v4-src.jar。jar 中的第一个文件夹应该是 /scr。
- 将文件复制到您的项目中,在此示例中,它与代码 jar 位于同一文件夹中。
- 在 Eclipse 中,将源 jar 附加到项目属性中。
我只是删除了自动生成的,然后手动将其添加为参考库。
首先打开一个类,IDE 会要求你更改附加源。
从构建路径附加 src 和 doc 的过程适用于某些人,但不适用于某些人(比如我)。要记住的一些关键事项
确保您在Package Explorer 中,而不是 Project Navigator中。
如果您已将 android-support-v4.jar 放在项目下的 libs 文件夹中。伟大的。
右键单击 jar,构建路径.. 添加到路径。(如果添加到路径没有显示,那么它已经添加了。你会看到配置路径..)
作为第 3 步的结果,一个名为Referenced Libraries的新文件夹将出现在包资源管理器树中。打开那棵树,在那里找到 android-support-v4.jar。在Referenced Libraries,属性中右键单击此 jar 。然后在那里设置 Java Source Attachment 和 Javadoc Location。
你完成了。
我的 Java 源附件的路径。(它的外部位置)
C:/Users/thupten/adt-bundle-windows-x86_64-20130514/sdk/extras/android/support/v4/src
我使用 android website doc 作为 java doc location
http://developer.android.com/reference/android/support/v4/app/package-summary.html
我为我找到了这个:
对于主库:android.jar:
src:sdk/sources/android-19 文档:sdk/docs/reference/
对于支持库:android-support-v4.jar:(在此之前我们应该添加 android-support-v4.jar 像外部 jar 一样(项目属性 -> Java 构建路径 -> 库,然后在选项卡的“订购和导出”中拉起这个库在 Android 私有库之前)):
src:sdk/extras/android/support/v4/src/java 文档:http: //developer.android.com/reference/android/support/v4/app/package-summary.html(不确定)
更新 SDK 并在其中下载文档后:
- 将支持库项目导入包资源管理器。
- 在库中创建一个文件夹并将其命名为
ext-jars
. 移动
android-support-v4.jar
到ext-jars
文件夹。- 右键单击项目,然后单击属性。
- 单击左侧菜单中的 Java Build Path,然后选择 Libraries 选项卡。
- 单击
Add JARs...
然后展开项目并选择您已移动到文件夹的 jar 文件ext-jars
。
- 展开添加的 jar 并选择
Source attachment
然后单击Edit
。 - 选择
External location
然后点击External Folder...
- 选择 Support v4 的源文件夹,它位于
[sdk-path]/extras/android/support/v4/src
- 选择
Javadoc location
单击Edit
然后选择Javadoc URL
然后单击Browse...
并选择支持 v4 的 javadoc 位置,该位置位于[sdk-path]/docs/reference/
- 选择
Order and Export
选项卡并检查android-support-v4.jar
您刚刚添加的内容。
我建议您也清理项目并重新打开 Eclipse。