如何将javadoc或源附加到libs文件夹中的jar?

时间:2012-03-26 13:35:59

标签: android eclipse adt javadoc

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

Non modifiable android dependencies classpath

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

12 个答案:

答案 0 :(得分:400)

回答问题的最佳方法是总结XavierplastivVinceFRChristopher的答案。

分步指南

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

  1. 将库.jar文件放在 libs 文件夹中,将相关的源.jar和doc .jar文件放在单独的子文件夹中,例如 libs / src 库/文档。如果需要,您可以使用 src docs 以外的名称,但重要的是.jar文件不直接位于 libs 中文件夹中。
  2. libs 文件夹中创建一个.properties文件,其中包含实际库.jar的确切名称(请参阅示例)。确保保留 .jar 部分。
  3. .properties文件中指定源和javadoc .jar的相对路径。
  4. 关闭并重新打开Eclipse项目! (可选)按 F5
  5. 刷新项目
  6. 在源代码中选择链接库的对象。
  7. 在Eclipse中打开Javadoc视图以查看文档(参见屏幕截图)。
  8. 打开所选对象的源代码声明(默认快捷键: F3 )。

  9. 实施例

    该示例使用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面板的屏幕截图:

    JavaDoc view in Eclipse

    使用Gson与Android 4.2.2的Eclipse项目的屏幕截图。:

    Eclipse test project screenshot


    引用解压缩的javadocs

    如果你想引用未作为打包.jar提供的javadocs,而只是android developer in the comments提出的作为文件和文件夹,请执行以下操作:

    1. 将库.jar放入libs/文件夹
    2. 使用以下内容创建yourlibraryname.jar.properties文件(不要忘记.jar ):

       doc=docs
      
    3. 将javadocs文件夹添加到libs/文件夹。

    4. 您应该提出以下文件夹结构:

      ├── 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

      的工作示例项目的屏幕截图

      GoogleAdMobAds Android library Eclipse project

答案 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”文件夹的方式:

  1. 创建“libraries”文件夹。
  2. 为每个库在其下创建一个子文件夹。
  3. 将每个库的所有文件放在相应的文件夹中(java jar文件,源jar文件,javadoc jar文件等)。
  4. 通过单击 Add Jars ... 按钮从库子文件夹添加jar,在Java Build Path的“Libraries”选项卡中为每个项目添加java jar文件“libraries”文件夹。
  5. 通过打开“库”选项卡中的项目,选择所需的项目,然后单击编辑... 按钮添加源/ javadoc,将源/ javadocs附加到每个项目“libraries”文件夹中的库子文件夹。
  6. 在“Java Build Path”的“Order and Export”选项卡中选中每个项目的复选框。
  7. 验证所有库已被移动后,删除“libs”文件夹。
  8. 按照上述步骤,您的项目将包含如下所示的文件夹:

    enter image description here

    您的Java Build Path将如下所示:

    enter image description here

    在订单和导出中勾选了库:

    enter image description here

答案 4 :(得分:5)

现在,将您希望Javadoc的库移动到lib。他们将该库添加到Build Path并添加Javadoc。

在Android问题中查看此comment

答案 5 :(得分:4)

在ADT 22上,我无法访问两个commons-io-2.4.jar和android-support-v4.jar的Javadoc

这是我修复它的方式:

  1. 前提条件:两个库都列在“参考库”下。

  2. 右键单击commons-io-2.4.jar并选择Properties。出现此窗口:

  3. enter image description here

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

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

    enter image description here

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

答案 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日)。

  • 在项目内的处打开javadoc的文件夹。
  • 将您的javadocs 解压缩,分别放入其自己的文件夹中。
  • lib文件夹中,为要与javadoc关联的每个lib添加xxx.jar.properties文件。
  • 在该属性文件中,请参阅解压缩相应javadoc的文件夹(在Windows上,转义反斜杠):

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

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

没有观察到任何这些步骤(没有解压缩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插件即可。这对我有用!!

  1. 启动Eclipse,然后选择“帮助”&gt;安装新软件。
  2. 点击右上角的添加。
  3. 在显示的“添加存储库”对话框中,为“名称”输入“ADT插件”,并为位置输入以下URL: https://dl-ssl.google.com/android/eclipse/ 注意:Android Developer Tools更新站点需要安全连接。确保您输入的更新站点URL以HTTPS开头。
  4. 单击“确定”。 在Available Software对话框中,选择Developer Tools旁边的复选框,然后单击Next。
  5. 在下一个窗口中,您将看到要下载的工具列表。单击“下一步”。
  6. 阅读并接受许可协议,然后单击“完成”。
  7. 如果您收到安全警告,说明无法建立软件的真实性或有效性,请单击“确定”。
  8. 安装完成后,重新启动Eclipse
  9. 希望有所帮助!

答案 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。

享受