在Eclipse中有没有一种简单的方法来附加源代码?

134

我非常喜欢Visual Studio在完成你自己编写的代码以及引用的代码(各种库/程序集)时,能够提供注释文档/参数名称的方式。

在Eclipse中是否有一种简单的方法,在代码补全或悬停方法时获得内联javadoc /参数名称?通过插件?通过某些设置?当你经常使用很多库(在Java中经常发生)并且必须去网站或本地javadoc位置查找信息时,这非常令人厌烦,而实际上你已经在源jar中拥有了它们!


使用Maven M2E插件时是否有不同的方法? - cmcginty
1
请参考以下链接:如何在libs文件夹中附加javadoc或源代码?,了解在Android中如何实现,因为下面的解决方案不适用于Android。 - blahdiblah
17个回答

154

简短的回答是“是的”。

您可以使用项目的属性附加源代码。

转到属性(对于项目) -> Java构建路径 -> 库

选择要为其附加源代码/ javadoc 的库,然后展开该库,您将看到以下列表:

Source Attachment: (none)
Javadoc location: (none)
Native library location: (none)
Access rules: (No restrictions)

选择Javadoc位置,然后在右侧单击“编辑”。从那里开始应该很直接了。


3
当然,你应该注意,如果你有想要附加的实际源代码,你也可以对“源码附件”部分执行相同的操作。然后你就可以获取Javadoc并直接查看实际的源代码(如有需要)。 - ColinD
17
我称之为附加源代码的辛苦和痛苦方式。每次在使用该jar文件的每个项目中包含它时,都需要这样做。如果你有许多jar文件和许多项目,那就不好了。 - James Moore
13
这个答案得到了太多的投票!5年来改进的答案是提到的Java源代码附加程序,它确实符合“一种简单的方式”。 - Cwt
2
当我们在库中遇到“不可修改”的情况时应该怎么办? - Henrique de Sousa

111

直到昨天,我一直在费力地下载大量 jar 文件的源代码压缩包,并为每个项目手动附加它们。然后我的同事向我介绍了 Java 源码附加器。它做了 Eclipse 应该做的事情——右键点击上下文菜单,然后选择“添加 Java 源码”。

enter image description here

它会自动为您下载并附加源代码。我只遇到了几个它不知道的库,当发生这种情况时,它会让您向社区贡献 URL,这样其他人就不会遇到该库的问题了。


它可以工作,但是有没有一种简单的方法可以从您正在检查的方法到项目资源管理器中它所在的jar包呢? - Noumenon
请注意,.jar文件并未保存在您的项目文件夹中,因此如果您与他人合作,则您的.classpath不具备可移植性。 - Stevoisiak

14

一个简单的方法是:

  1. 下载相应的SRC文件/文件夹。

  2. 在eclipse编辑器中,Ctrl+单击或F3单击需要源代码的方法/类。打开了一个新标签,上面写着“找不到附加的源”。

  3. 单击“附加源”按钮,单击“附加源文件夹”按钮,浏览到下载的SRC文件夹的位置即可完成!

(注:按钮标签可能略有不同,但基本上就是这样。)


8

1) 按住Control键并单击要查看的方法。然后Eclipse将带您到源未找到页面。

2) 单击“附加源” enter image description here

3) enter image description here

4) 导航至 C:\Program Files\Java\jdk-9.0.1\lib\src.zip

5) 单击确定 enter image description here 现在您应该看到源代码。


5
我发现有时候你指向的目录应该是正确的,但它仍然声称在所附加的源中找不到文件。在这些情况下,我意识到最后一个路径元素是"src"。只需删除此路径元素(因此确实将其指向实际路径上方一级,其中包含"org"或"com"文件夹),就可以神奇地使其正常工作。
不知何故,如果存在“src”路径元素,则Eclipse似乎会暗示它,如果您将其包含在源路径中,则Eclipse会出问题。或者类似于这样的东西。

我有相同的问题:源代码在名为“source”的目录中(其中包含“org”等),但是我无法在Ctrl + 单击方法名称时让Eclipse使用它。而是得到字节码视图。我尝试将其名称更改为“src”,使用“org”作为目录,或者使用“source”上面的目录,但什么都没有改变... - Matthieu
我不相信Eclipse会假设src是路径的一部分。只需选择包含名为顶级域名的文件夹的文件夹即可。 - H2ONaCl
@broiyan:有趣的是,我刚刚说了这就是我经验上、物理上体验到的,而你却不相信! :-) - stolsvik

5

有一个简单的方法...前往http://sourceforge.net/projects/jdk7src/下载zip文件,然后将其附加到eclipse中。在eclipse中给出您下载zip文件的路径,我们就可以浏览源代码了。


4
当您将一个jar文件添加到类路径中时,您可以附加一个源目录、zip或jar文件到该jar文件中。在Java Build Path属性中,在“Libraries”选项卡上,展开jar的条目,您会看到有一个用于源附件的项目。选择此项目,然后点击“编辑”按钮。这让您选择包含源代码的文件夹、jar或zip。
此外,如果您在jar中选择一个类或方法并按CTRL+单击它(或按F3),则会进入字节码视图,其中有一个选项可以附加源代码。
执行这些操作将为您提供所有参数名称以及完整的javadoc。
如果您没有源代码但有javadoc,您可以通过第一种方法附加javadoc。它甚至可以引用外部URL,如果您没有下载它。

3
  1. 点击您想要查看的JAVA代码。(如果要检查java.util.List的源代码,请单击List打开List.java。)
  2. 点击“附加源”按钮。
  3. 您将被要求“选择包含rt.jar源的位置(文件夹、JAR或zip)”。
  4. 选择“外部位置”选项。找到src.zip文件。
  5. src.zip的路径为:*\Java\jdk1.8.0_45\src.zip

2
  1. 将源文件放入一个zip文件中(与Java源文件一样)
  2. 进入项目属性 -> 库
  3. 选择源附件并点击“编辑”
  4. 在源附件配置上点击“变量”
  5. 在“变量选择”上点击“新建”
  6. 输入有意义的名称并选择在步骤1中创建的zip文件

1
另一种选择是右键单击您的jar文件,该文件位于(您的项目)->引用库->(您的jar),然后单击属性。然后单击Java源代码附件。然后在位置路径中放置源jar文件的位置。
这只是附加源文件的另一种方法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接