Eclipse 的新版本 ADT r17 插件添加了自动设置 JAR 依赖项的功能。 /libs 文件夹中的任何 .jar 文件现在都添加到构建配置中。不幸的是,Android Dependencies 类路径容器是不可修改的。
https://i.stack.imgur.com/gXsaM.png
如何将 javadoc 和源附加到自动插入的 .jar(来自 /libs 文件夹)?
回答您的问题的最佳方法是总结来自 Xavier、plastiv、VinceFR 和 Christopher 的答案。
分步指南
为了将源代码和 javadoc 链接到 Eclipse 自动链接的 .jar 库,您必须执行以下操作:
将库 .jar 文件放在 libs 文件夹中,并将关联的源 .jar 和 doc .jar 文件放在单独的子文件夹中,例如 libs/src 和 libs/docs。如果需要,您可以使用 src 和 docs 以外的名称,但重要的是 .jar 文件不直接位于 libs 文件夹中。在 libs 文件夹中使用实际库 .jar 的确切名称创建一个 .properties 文件(参见示例)。确保保留 .jar 部分。在 .properties 文件中指定源和 javadoc .jar 的相对路径。关闭并重新打开 Eclipse 项目!或者,按 F5 刷新项目。在源代码中选择链接库的对象。在 Eclipse 中打开 Javadoc 视图以检查文档(参见屏幕截图)。打开所选对象的源代码声明(默认快捷键:F3)。
例子
该示例使用 Gson library。
libs文件夹的目录结构:
libs
├── docs
│ └── gson-2.2.2-javadoc.jar
├── gson-2.2.2.jar
├── gson-2.2.2.jar.properties
└── src
└── gson-2.2.2-sources.jar
gson-2.2.2.jar.properties 的内容
src=src/gson-2.2.2-sources.jar
doc=docs/gson-2.2.2-javadoc.jar
附加信息
您当然可以将 javadoc 和源 .jar 移动到其他文件夹并指定相对路径。这取决于你。将源和 javadoc jar 直接放入 lib 文件夹是可能的,但不建议这样做,因为这会导致文档和源代码包含在您的应用程序中。
Eclipse JavaDoc 面板的屏幕截图:
https://i.stack.imgur.com/9MGSw.png
使用 Gson 和 Android 4.2.2 的 Eclipse 项目的屏幕截图:
https://i.stack.imgur.com/HEQ8w.jpg
引用未打包的 javadocs
如果您想引用未作为打包 .jar
提供的 javadocs,而只是按照 android developer in the comments 的要求作为文件和文件夹 提供,请执行以下操作:
将库 .jar 放在 libs/ 文件夹中 创建一个 yourlibraryname.jar.properties 文件(不要忘记 .jar),其中包含以下内容: doc=docs 将 javadocs 文件夹添加到 libs/ 文件夹中。
您应该提出以下文件夹结构:
├── docs
│ ├── allclasses-frame.html
│ ├── allclasses-noframe.html
│ ├── com
│ │ └── google
│ │ └── ads
│ │ ├── Ad.html
│ │ │ ....
│ │ └── package-tree.html
│ │ ...
│ └── stylesheet.css
├── GoogleAdMobAdsSdk-6.4.1.jar
└── GoogleAdMobAdsSdk-6.4.1.jar.properties
如上所述,不要忘记关闭并重新打开 Eclipse 项目!以下是引用 GoogleAdMobAds Android library 的工作示例项目的屏幕截图。
https://i.stack.imgur.com/SHaxx.jpg
在 Windows 上,您必须转义反斜杠以引用属性文件中的 doc 和 src 路径。例如,对于 android-support-v4.jar,属性文件内容类似于:
doc=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\docs
src=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\src
来自http://code.google.com/p/android/issues/detail?id=27490#c21的答案
在您的 libs 文件夹中,您必须具有:
doc(folder)
foo_doc(folder)
index.html
...
...
foo.jar
foo.jar.properties
在您的 foo.jar.properties
中,只需输入 doc=./doc/foo_doc
也许您将不得不刷新您的项目,清理它,关闭它并重新打开它。
这个对我有用!
我尝试了以上所有方法,但没有一个对我有用。我想出了一个永远有效的方法。基本上,罪魁祸首是 ADT 处理“libs”文件夹的方式,所以我退出使用“libs”文件夹。相反,我创建了一个“库”文件夹并使用它。
您可以执行以下操作,并且它将始终有效 - 即使 ADT 应该更改它在将来更改其处理“libs”文件夹的方式:
创建一个“库”文件夹。在其下为每个库创建一个子文件夹。将每个库的所有文件放在适当的文件夹中(java jar 文件、源 jar 文件、javadoc jar 文件等)。在 Java 构建路径的“库”选项卡中为每个项目添加 java jar 文件,方法是单击“添加 Jars...”按钮以从“库”文件夹中的库子文件夹添加 jar。通过在“库”选项卡中打开项目,选择所需的项目,然后单击“编辑...”按钮从“库”中的库子文件夹中添加源/javadocs,将源/javadocs 附加到每个项目文件夹。选中 Java Build Path 的“Order and Export”选项卡中每个项目的复选框。验证所有库已被移动后,删除“libs”文件夹。
按照上述过程,您的项目将拥有如下所示的文件夹:
https://i.stack.imgur.com/hLi0d.png
您的 Java 构建路径将如下所示:
https://i.stack.imgur.com/oIdmU.png
在 Order and Export 中,库被勾选:
https://i.stack.imgur.com/JUJG3.png
现在,将您想要 Javadoc 的库移动到 lib
。他们将该库添加到 Build Path
并添加 Javadoc。
在 android 问题中检查此 comment。
Build Path
中导出。
在 ADT 22 上,我无法访问 commons-io-2.4.jar 和 android-support-v4.jar 的 Javadoc
这是我修复它的方式:
前提条件:两个库都列在“引用库”下。右键单击 commons-io-2.4.jar 并选择属性。出现此窗口:
https://i.stack.imgur.com/dh7Tn.png
commons-io-2.4.jar 与 commons-io-2.4-javadoc.jar 捆绑在一起,所以我在存档外部文件路径中指定了 Javadoc。
我对支持库做了同样的事情:右键单击 android-support-v4.jar 并选择 Properties。出现此屏幕:
https://i.stack.imgur.com/4bGOp.png
这次我指定了源目录的路径。
当我升级到 SDK 工具和 ADT 修订版 17 时,对 commons-io-2.0.1.jar 的库引用被破坏。
为了解决这个问题,我使用了 Project -> Properties -> Java Build Path 并选择了 Libraries 选项卡。我删除了对 commons-io-2.0.1.jar 的所有引用,然后使用 Add Jar 将 commons-io-2.0.1.jar 重新添加到项目中。然后我单击库名称旁边的“>”箭头以展开库引用,并使用编辑按钮设置源附件和 Javadoc 位置。
抱歉,我无法发布图片,因为我没有足够的代表(请...)。
似乎是一个移动的目标,但是,在从许多地方收集了一些零碎的东西之后(包括对这个问题的答案,它有助于但未能描述所有必要的细节,或者系统可能在此期间略有变化),这似乎是解决方案,至少截至目前(2013 年 8 月 28 日)。
在项目内部的某个地方为您的 javadocs 打开一个文件夹。
将您的 javadocs 解压缩到那里,每个都放入自己的文件夹中。
在您的 lib 文件夹中,为您要关联 javadoc 的每个 lib 添加一个 xxx.jar.properties 文件。
在该属性文件中,参考您将相应的 javadoc 解压缩到的文件夹(在 Windows 上,转义反斜杠):
doc=d:\\Android\\javadoc\\libGoogleAnalyticsServices
在 Eclipse 中关闭并重新打开您的项目(刷新是不够的)。现在,当您将鼠标悬停在相应的类上时,您应该会看到工具提示。
未能遵守任何这些步骤(不解压缩 javadoc、引用文件而不是文件夹等)似乎会破坏它。
我知道这个问题很老了,但是当我昨天遇到同样的问题并且上面发布的解决方案对我来说太烦人时,我发现可以轻松地将源路径定义添加到项目的 .classpath 文件中。然后 Eclipse 将调整它,您就可以浏览源代码。
之前的类路径条目:
<classpathentry kind="lib" path="[PATH_TO_MY_JAR]"/>
添加源路径后
<classpathentry kind="lib" path="[PATH_TO_MY_JAR]" sourcepath="[PATH_TO_MY_SOURCE_JAR]"/>
希望这可以帮助
只需更新 ADT 插件。这对我有用!
启动 Eclipse,然后选择帮助 > 安装新软件。单击右上角的添加。在出现的 Add Repository 对话框中,输入“ADT Plugin”作为名称,输入以下 URL 作为位置:https://dl-ssl.google.com/android/eclipse/ 注意:Android 开发者工具更新站点需要一个安全连接。确保您输入的更新站点 URL 以 HTTPS 开头。单击确定。在可用软件对话框中,选中开发人员工具旁边的复选框,然后单击下一步。在下一个窗口中,您将看到要下载的工具列表。点击下一步。阅读并接受许可协议,然后单击完成。如果您收到安全警告,提示无法确定软件的真实性或有效性,请单击“确定”。安装完成后重启Eclipse
希望有帮助!
对于任何给定的 jar,如果您想在编码时查看工具提示上的 Javadoc 帮助,请执行以下操作:右键单击您的项目 > 属性 > Java 构建路径 > 库选项卡。单击 jar 旁边的箭头以展开。
源附件应该指向实际 jar 的位置(可能就在您的 java 文件夹中)。
Javadoc 位置:这里有两个选择:URL 和存档。如果此 jar 的 javadocs 是包含第一级 index.html 文件的文件夹形式,请选择“Javadoc URL”并指向该文件夹。如果您的 javadoc 在 jar 中,请选择“Javadoc in archive”并指向 jar。不要忘记重新启动您的工作区/关闭并重新打开您的项目以使用 Javadoc 信息更新工具提示。
我希望这有助于为我认为应该是一个非常简单的任务提供一个简单的答案。
我的解决方案:
下载一个名为“Java Source Attacher Feature”的 Eclipse 插件。
稍后,选择一个 jar 并使用此插件附加源代码。在jar文件中点击选中它,鼠标右键,然后选择“attach java source”。
当您拥有源代码时,您将自动获得 javadoc。
现在您可以在类上使用 F2 来查看关联的 javadoc。
享受