新版本的ADT r17插件为Eclipse添加了自动设置JAR依赖项的功能。/libs文件夹中的任何.jar文件现在都被添加到构建配置中。不幸的是,Android依赖类路径容器是不可修改的。

如何将javadoc和源代码附加到自动插入的.jar(从/libs文件夹)?


当我升级到SDK Tools和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重新添加到项目中。然后单击库名称旁边的' > '箭头以展开库引用,并使用编辑按钮设置Source附件和Javadoc位置。

对不起,我不能张贴图像,因为我没有足够的代表(请…)。


现在,将您想要Javadoc的库移动到lib。他们将该库添加到构建路径并添加Javadoc。

在android问题中检查此评论。


答案来自http://code.google.com/p/android/issues/detail?id=27490#c21

在你的libs文件夹中,你必须有:

doc(folder)
    foo_doc(folder)
        index.html
        ...
        ...
foo.jar
foo.jar.properties

在你的罐子里。属性,只需输入doc=./doc/foo_doc

也许你将不得不刷新你的项目,清理它,关闭它并重新打开它。

这对我很管用!


回答你的问题的最好方法是总结Xavier, plastiv, VinceFR和Christopher的答案。

循序渐进指南

为了将源代码和javadoc链接到由Eclipse自动链接的.jar库,您必须执行以下操作:

Place the library .jar file in the libs folder, and the associated source .jar and doc .jar files in separate subfolders such as libs/src and libs/docs. You can use a name other than src and docs if you want, but it's important that the .jar files aren't directly in the libs folder. Create a .properties file in the libs folder with the exact name of the actual library .jar (see example). Make sure you keep the .jar part. Specify the relative paths to the sources and javadoc .jar in the .properties file. Close and re-open the Eclipse project! Optionally, refresh the project by pressing F5. Select an object of the linked library in the source code. Open the Javadoc view in Eclipse to check the documentation (see screenshot). Open the source code declaration (default shortcut: F3) of the selected object.

例子

本例使用Gson库。

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和sources .jar移到其他文件夹中并指定相对路径。这取决于你。可以将源代码和javadoc jar直接放在lib文件夹中,但不建议这样做,因为这会导致文档和源代码包含在应用程序中。

Eclipse JavaDoc面板的截图:

Android 4.2.2下使用Gson的Eclipse项目截图:


引用未打包的javadocs

如果你想引用javadocs,它不是作为一个打包的。jar文件提供的,而只是作为android开发者在评论中要求的文件和文件夹,请执行以下操作:

将库.jar放在libs/文件夹中 创建一个yourlibraryname.jar.properties文件(不要忘记.jar),包含以下内容: 医生=文档 将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库的工作示例项目的截图。


在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

我尝试了以上所有的方法,但没有一个对我有效。我想出了一个永远有效的方法。基本上,罪魁祸首是ADT处理“libs”文件夹的方式,所以我放弃使用“libs”文件夹。相反,我创建了一个“libraries”文件夹并使用它。

你可以这样做,它总是工作-即使ADT应该改变它如何改变它处理“libs”文件夹在未来:

Create a "libraries" folder. Create a sub-folder under it for each library. Put all of the files for each library in the appropriate folder (java jar file, source jar file, javadoc jar file, etc). Add the java jar file for each project in the "Libraries" tab for the Java Build Path by clicking on the Add Jars... button to add the jar from the library sub-folder in the "libraries" folder. Attach the source/javadocs to each project by opening the project in the "Libraries" tab, selecting the desired item, and clicking on the Edit... button to add the source/javadocs from the library sub-folder in the "libraries" folder. Check the checkbox for each project in the "Order and Export" tab for the Java Build Path. After verifying that all libraries have been moved delete the "libs" folder.

按照上面的步骤,你的项目会有这样的文件夹:

你的Java构建路径看起来像这样:

在Order和Export中,库被勾选:


似乎是一个移动的目标,但在收集了许多地方的零碎信息(包括对这个问题的答案,但未能描述所有必要的细节,或者可能系统在此期间发生了轻微变化)后,这似乎是解决方案,至少到目前为止(2013年8月28日)。

为javadocs打开一个文件夹,不在项目内部。 把你的javadocs解压到它自己的文件夹中。 在lib文件夹中,为每个想要关联javadoc的lib添加一个xxx.jar.properties文件。 在那个属性文件中,引用你解压javadoc到的文件夹(在Windows上,转义反斜杠):

doc=d:\\Android\\javadoc\\libGoogleAnalyticsServices

在Eclipse中关闭并重新打开项目(刷新是不够的)。现在,当您将鼠标悬停在适当的类上时,应该会看到工具提示。

没有遵守这些步骤中的任何一个(不解压缩javadoc,引用文件而不是文件夹,等等)似乎会破坏它。


在ADT 22上,我无法访问common -io- 2.4.4 .jar和android-support-v4.jar的Javadoc

这是我解决它的方法:

前提条件:这两个库都列在“参考库”下。 右键单击commons-io-2.4.jar并选择Properties。此窗口显示:

commons-io-2.4.jar与commons-io-2.4-javadoc.jar捆绑在一起,因此我在归档外部文件路径中指定了Javadoc。

我对支持库做了同样的事情:右键单击android-support-v4.jar并选择Properties。此屏幕显示:

这一次,我指定了源目录的路径。


只需更新ADT插件。这对我很管用!!

Start Eclipse, then select Help > Install New Software. Click Add, in the top-right corner. In the Add Repository dialog that appears, enter "ADT Plugin" for the Name and the following URL for the Location: https://dl-ssl.google.com/android/eclipse/ Note: The Android Developer Tools update site requires a secure connection. Make sure the update site URL you enter starts with HTTPS. Click OK. In the Available Software dialog, select the checkbox next to Developer Tools and click Next. In the next window, you'll see a list of the tools to be downloaded. Click Next. Read and accept the license agreements, then click Finish. If you get a security warning saying that the authenticity or validity of the software can't be established, click OK. When the installation completes, restart Eclipse

希望有帮助!


我知道这个问题已经很老了,但是当我昨天遇到同样的问题时,上面发布的解决方案对我来说太烦人了,我发现可以很容易地在项目的.classpath文件中添加源路径定义。然后Eclipse将对其进行改编,您就可以浏览源代码了。

之前的类路径条目:

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]"/>

将路径添加到源后

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]" sourcepath="[PATH_TO_MY_SOURCE_JAR]"/>

希望这能有所帮助


对于任何给定的jar,如果您希望在编码时在工具提示中看到Javadoc帮助,请执行以下操作: 右键单击项目>属性> Java构建路径>库选项卡。单击罐子旁边的箭头展开。

源附件应该指向实际jar的位置(可能就在java文件夹中)。

Javadoc位置:这里有两个选择:URL和存档。如果这个jar的javadocs是一个文件夹的形式,在第一层包含一个index.html文件,选择“Javadoc URL”并指向该文件夹。 如果你的Javadoc在一个jar中,选择“Javadoc in archive”并指向这个jar。 不要忘记重新启动工作区/关闭并重新打开项目,以使用Javadoc信息更新工具提示。

我希望这有助于为我认为应该是非常简单的任务提供一个简单的答案。


我的解决方案:

下载一个名为“Java Source Attacher Feature”的eclipse插件。

稍后,选择一个jar并使用这个插件附加源代码。点击jar文件来选择它,鼠标右键,然后选择“附加java源代码”。

有了源代码,就自动有了javadoc。

现在可以在类上使用F2来查看相关的javadoc。

享受