当Javadoc未添加到依赖项时如何在Maven的eclipse插件中引用javadocs到依赖项
时间:2020-03-05 18:47:48 来源:igfitidea点击:
我在开发中使用Eclipse,Maven和Java。我使用Maven下载依赖项(如果可用,则下载jar文件和javadoc),并使用Maven的eclipse插件为Eclipse生成.project和.classpath文件。当下载的依赖项没有添加javadoc时,我在.classpath文件中手动添加了javadoc的链接,以便可以在Eclipse中看到依赖项的javadoc。然后,当我运行Maven的eclipse插件重新生成.classpath文件时,它当然会消除该更改。
有没有一种方法可以配置Maven的eclipse插件,以便在运行Maven的eclipse插件时自动为javadoc添加类路径属性?
我只对在maven存储库中未提供依赖项的javadoc和/或者源的答案感兴趣,这对我来说是最常见的情况。使用downloadSources和/或者downloadJavadocs属性不会解决此问题。
解决方案
回答
依赖项的来源会有所帮助吗?我们可以使用-DdownloadSources = true告诉eclipse插件下载这些文件(并在.classpath中进行引用)。
回答
从Maven Eclipse插件常见问题解答
The following example shows how to do this in the command-line: mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true or in your pom.xml: <project> [...] <build> [...] <plugins> [...] <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> <configuration> <downloadSources>true</downloadSources> <downloadJavadocs>true</downloadJavadocs> </configuration> </plugin> [...] </plugins> [...] </build> [...] </project>
回答
我们可能会考虑通过使用安装文件目标将javadoc jar手动安装到本地存储库中并传递-Dclassifier = javadoc选项来完全避免此问题。完成后,mvn生成的.classpath应该正确。
如果我们使用远程存储库作为中央存储的代理,则还可以将Javadocs部署到该存储库,然后使用该代理的其他所有用户现在也将自动获取javadocs。