为什么我们需要 javadoc 和 sources jar?

Why do we need both javadoc and sources jar?

一般情况下,在发布图书馆时,我们需要sources.jarjavadoc.jar吗?我不太明白javadoc.jar的目的。如果是关于代码文档,IDE可以从sources.jar本身显示它。

示例

请注意,这不是 What are the differences between javadoc.jar, sources.jar and .jar? 的副本。我正在寻找 javadoc.jar 可以做什么,而 sources.jar 不能做什么。

让我一一回答问题:

Why does javadoc.jar even exist if sources.jar can be used?

这个问题基本上是针对开发人员的。如果无法共享资源(例如,它可能是专有的),共享文档仍然会有帮助。

Why do developers provide both?

一个非常简单的原因可能是因为这是 Maven 的默认设置,Gradle 等

另一个原因可能是某些组织出于安全原因(或其他原因)不允许访问源代码,或者t/don不想自己构建 HTML 文件而只是托管它们。

Why do I as a developer need to import javadoc.jar into my IDE if I can use sources.jar?

我会说你不需要。作为一名开发人员,我经常发现将源代码用于调试等非常有用,所以我更喜欢 source.jar.

源 JAR 和 Javadoc JAR 的用途根本不同。

  • 源 JAR 将允许 IDE 提供代码完成的解决方案、必需和可选参数及其相应类型的列表等。示例: Source for Jenkins server
  • Javadoc JAR 提供了正在使用的 API 的基于 Web 的百科全书。因此,如果有人对所有各种构造函数调用感到好奇,可以阅读它。如果有人对继承层次结构感到好奇,他们可以很容易地浏览 HTML 格式的文档。值得注意的是,IDE 可能会提供 Javadoc 作为摘录并链接到源解决方案的文档,但也不会显示相互关系或细节。 示例: Javadoc for Jenkins server

出于上面详述的精确解释原因,开发产品的完整表示应包括 sourcejavadoc