Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven与javadocs的依赖关系_Java_Maven_Dependencies_Javadoc - Fatal编程技术网

Maven与javadocs的依赖关系

Maven与javadocs的依赖关系,java,maven,dependencies,javadoc,Java,Maven,Dependencies,Javadoc,3个问题: 下面是JUnit的两个maven依赖项。我在互联网上搜索了几个小时,似乎无法确定第二个是Javadoc+代码还是只有Javadoc。我需要一个还是两个?此外,在开发项目中包含Javadocs而不是在生产构建中包含Javadocs最有效的方法是什么?(我不希望为每台机器上的每个依赖项手动下载javadocs。) 朱尼特 朱尼特 4.11 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <dependency> <

3个问题:

下面是JUnit的两个maven依赖项。我在互联网上搜索了几个小时,似乎无法确定第二个是Javadoc+代码还是只有Javadoc。我需要一个还是两个?此外,在开发项目中包含Javadocs而不是在生产构建中包含Javadocs最有效的方法是什么?(我不希望为每台机器上的每个依赖项手动下载javadocs。)


朱尼特
朱尼特
4.11
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.11</version>
  <classifier>javadoc</classifier>
</dependency>

朱尼特
朱尼特
4.11
javadoc
编辑:问题:

  • 这些依赖关系之间有什么区别
  • 我两个都需要吗 让他们能够使用依赖关系&手头有Javadoc吗
  • 包含Javadocs进行开发的最佳实践是什么

一般来说,您的IDE将在maven项目中为您处理javadoc的解析。这是假设您的IDE理解maven,例如netbeans、intellij或eclipse w/m2e


第二个工件只是javadocs。第一个工件是代码。几乎没有什么好的理由将javadoc工件作为依赖项包含进去。

当我在eclipse中创建一个maven项目时,我偶然发现了这个问题,既没有javadoc,也没有依赖项的源附加到我的项目上,我想知道应该添加哪个依赖项

帮助我的是补充

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
        </plugin>
    </plugins>
</build>

org.apache.maven.plugins
maven源插件
org.apache.maven.plugins
maven javadoc插件

到我的pom.xml。这样,您只需要使用第一个依赖项,maven/eclipse负责下载第二个依赖项(正如在另一个答案中所指出的,只有javadoc)。

通常javadoc不主要用作依赖项。因为这些在编译和运行时都不是必需的。它只是在开发或调试时帮助开发人员

假设使用JavaIDEEclipse,我们可以使用引用的java文档。下面是我们可以将javadocs/源与相应的jar关联的方法

1。如果是非maven项目: 下载javadocsjar或压缩文件(任何可用文件),并将其放在某个目录中。 右键单击IDEEclipse中的应用程序项目,单击属性并选择Java构建路径,然后选择Java构建路径下的选项卡库。现在展开要与java文档/源链接的jar。选择Javadoc位置链接并单击编辑按钮,一个新窗口出现,我们需要在其中选择javadocs jar路径。单击OK,我们已经将javadoc/源代码与相应的jar链接起来

2。如果是maven项目

如果我们使用的是Maven项目,那么在ProjectExplorer视图中的项目下,转到Maven依赖项下的jar文件,如下所示。现在右键单击要添加Javadoc/source的jar文件, 选择Maven,然后单击要链接到项目的Javadoc或Source。现在IDE将自动下载所需的javadoc/源代码,并将其与项目中相应的jar链接

您可以通过右键单击IDE中的项目并单击Java Build Path,选择Java Build Path下的Libraries选项卡,然后展开所需的jar来验证这一点,在这里,当您单击Edit按钮时,您将看到Javadoc/源与相应jar的链接路径,如下图所示

3。如果是Maven项目,并且我们正在设置默认行为:

Eclipse将在开始时自动下载javadoc/源代码以及所需的主要jar。 默认情况下,将指令设置为Maven,以下载项目中链接的所有jar的Javadoc/源代码

单击Windows–preferences–选择Maven并单击复选框Download Artifact Javadoc,如下所示

现在单击apply并保存它,现在当您创建新的Maven项目时,默认情况下,Javadocs将被下载并与项目中所有依赖的JAR链接。
您可以通过右键单击项目和属性进行验证,在Java构建路径下可以看到Javadoc与所有JAR链接,如下所示

如果您的项目是Maven项目,那么最好使用第二种方法,因为通过使用这种方法,IDE和Maven将负责下载Javadoc/源的正确版本,并将其与相关jar链接。


第三种方法成本有点高,因为所有依赖JAR都将下载javadoc/源代码,可能您对所有依赖JAR的javadoc/源代码不感兴趣。

这应该会有所帮助(如果我正确回答了您的一个问题):@Andreas\D我以前看过这个。我做了推荐的添加,但在这一步有点迷路:“然后确保activeProfiles包含新的配置文件。”将答案中的代码复制到您的
~/.m2/settings.xml
文件就足够了。您可能需要将profile元素添加到您的profile中(如果已经定义了一些),谢谢!!仅第二段就回答了大约六个开放性问题。我正在使用Eclipse w/m2e。一旦我绑定了一个依赖项,本例中的JUnit,是否有地方我可以右键单击并告诉它提取文档?如果您按住ctrl键并单击JUnit中的一个方法,您应该会在代码中看到它。然后,当您将鼠标悬停在这些方法上(例如,
org.junit.Assert.assertNotNull
)时,您应该开始看到Javadoc填充,如果它们还没有启动。
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
        </plugin>
    </plugins>
</build>