Eclipse的新版ADT r17插件添加了自动设置JAR依赖项的功能。 / libs文件夹中的任何.jar文件现在都会添加到构建配置中。不幸的是,Android Dependencies类路径容器是不可修改的。
如何将javadoc和源附加到自动插入的.jar(来自/ libs文件夹)?
答案 0 :(得分:400)
回答问题的最佳方法是总结Xavier,plastiv,VinceFR和Christopher的答案。
为了将 sources和javadoc 链接到由Eclipse自动链接的.jar库,您必须执行以下操作:
.properties
文件,其中包含实际库.jar的确切名称(请参阅示例)。确保保留 .jar 部分。.properties
文件中指定源和javadoc .jar的相对路径。
该示例使用Gson library。
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
src=src/gson-2.2.2-sources.jar
doc=docs/gson-2.2.2-javadoc.jar
您当然可以将javadoc和源.jar移动到其他文件夹中并指定相对路径。随你(由你决定。可以将源和javadoc jar直接放入 lib 文件夹,但不推荐,因为这会导致文档和源代码包含在您的应用程序中
Eclipse JavaDoc面板的屏幕截图:
使用Gson与Android 4.2.2的Eclipse项目的屏幕截图。:
如果你想引用未作为打包.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。
的工作示例项目的屏幕截图
答案 1 :(得分:25)
在Windows上,您必须转义反斜杠,以便在属性文件中引用doc和src路径。例如,for 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
答案 2 :(得分:17)
答案来自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
也许你必须刷新你的项目,清理它,关闭它并重新打开它。
对我有用!
答案 3 :(得分:10)
我尝试了以上所有内容,但没有一个适合我。我想出了一个永远有效的方法。基本上,罪魁祸首是ADT处理“libs”文件夹的方式,所以我退出使用“libs”文件夹。相反,我创建了一个“库”文件夹并使用它。
您可以执行以下操作,它始终有效 - 即使ADT应该更改它在未来更改处理“libs”文件夹的方式:
按照上述步骤,您的项目将包含如下所示的文件夹:
您的Java Build Path将如下所示:
在订单和导出中勾选了库:
答案 4 :(得分:5)
现在,将您希望Javadoc的库移动到lib
。他们将该库添加到Build Path
并添加Javadoc。
在Android问题中查看此comment。
答案 5 :(得分:4)
在ADT 22上,我无法访问两个commons-io-2.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。出现此屏幕:
这次我指定了源目录的路径。
答案 6 :(得分:3)
当我升级到SDK Tools和ADT 17版时,对commons-io-2.0.1.jar的库引用被破坏。
要解决此问题,我使用了Project - >属性 - > Java Build Path和我选择了Libraries选项卡。我删除了对commons-io-2.0.1.jar的任何引用,然后使用Add Jar将commons-io-2.0.1.jar重新添加到项目中。然后,我单击库名称旁边的“>”箭头以展开库引用,并使用编辑按钮设置源附件和Javadoc位置。
抱歉,我无法发布图片,因为我没有足够的代表(请...)。
答案 7 :(得分:1)
似乎是一个移动目标,但是,在收集了许多地方的点点滴滴之后(包括这个问题的答案,但这个问题有助于但未能描述所有必要的细节,或者系统在此期间稍有变化),似乎是解决方案,至少截至目前(2013年8月28日)。
lib
文件夹中,为要与javadoc关联的每个lib添加xxx.jar.properties
文件。 doc=d:\\Android\\javadoc\\libGoogleAnalyticsServices
没有观察到任何这些步骤(没有解压缩javadoc,引用文件而不是文件夹等)似乎打破了它。
答案 8 :(得分:1)
我知道这个问题相当陈旧,但是当我昨天遇到同样的问题并且上面发布的解决方案对我来说太烦人时,我发现可以轻松地将源路径定义添加到.classpath文件中。该项目。然后,Eclipse将对其进行调整,您可以浏览源代码。
之前的类路径条目:
<classpathentry kind="lib" path="[PATH_TO_MY_JAR]"/>
将路径添加到源
后<classpathentry kind="lib" path="[PATH_TO_MY_JAR]" sourcepath="[PATH_TO_MY_SOURCE_JAR]"/>
希望这有帮助
答案 9 :(得分:0)
只需更新ADT插件即可。这对我有用!!
希望有所帮助!
答案 10 :(得分:0)
对于任何给定的jar,如果您希望在编码时在工具提示上看到Javadoc帮助,请执行以下操作: 右键单击您的项目&gt;属性&gt; Java构建路径&gt;库选项卡。单击jar旁边的箭头以展开。
源附件应指向实际jar的位置(可能在您的java文件夹中)。
Javadoc位置:您有两种选择:网址和存档。如果此jar的javadoc是在第一级包含 index.html 文件的文件夹的形式,请选择“Javadoc URL”并指向该文件夹。 如果您的javadocs在jar中,请选择“Javadoc in archive”并指向jar。 不要忘记重新启动工作区/关闭并重新打开项目以使用Javadoc信息更新工具提示。
我希望这有助于为我认为应该是一项非常简单的任务提供一个简单的答案。
答案 11 :(得分:0)
我的解决方案:
下载一个名为“Java Source Attacher Feature”的eclipse插件。
稍后,选择一个jar并使用此插件附加源代码。单击jar文件选择它,右键单击鼠标,然后选择“attach java source”。
当您拥有源代码时,您自动拥有javadoc。
现在,您可以在类上使用F2来查看相关的javadoc。
享受