标签: maven-javadoc-plugin

如何从命令行禁用Maven Javadoc插件?

在pom.xml中,我有这样的声明

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <executions>
            <execution>
                <id>attach-javadocs</id>
                <goals>
                    <goal>jar</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
Run Code Online (Sandbox Code Playgroud)

有没有办法从命令行关闭它?

我知道我可以将其提取到配置文件中,但这不是我想要的.

java command-line command-line-arguments maven maven-javadoc-plugin

215
推荐指数
5
解决办法
14万
查看次数

JDK8 - 尝试使用Maven javadoc插件生成javadoc时出现错误"找不到javax.interceptor.InterceptorBinding的类文件"

我正在使用JDK8(在Jenkins推出的Linux上使用Win x64 u25 JDK +在我的Eclipse工作区上尝试过它 - jdk-8u20-linux-x64,两者都有同样的问题).

我有多模块Maven项目(我从包装类型为"pom"的主模块启动Maven目标"javadoc:aggregate").

Pom构建部分如下所示:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <configuration>
                <additionalparam>-Xdoclint:none</additionalparam>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

我总是收到错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.1:aggregate (default-cli) on project uloan-global-build: An error has occurred in JavaDocs report generation:
[ERROR] Exit code: 1 - javadoc: error - com.sun.tools.doclets.internal.toolkit.util.DocletAbortException: com.sun.tools.doclets.internal.toolkit.util.DocletAbortException: com.sun.tools.doclets.internal.toolkit.util.DocletAbortException: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for javax.interceptor.InterceptorBinding not found
[ERROR] 
[ERROR] Command line was: /usr/java/jdk1.8.0_20/jre/../bin/javadoc @options @packages
Run Code Online (Sandbox Code Playgroud)

我已尽力尝试一切,并试图在Google上搜索很长时间,但没有成功.我找到了人们遇到类似问题的链接,但没有任何关于可能的解决方案的信息:

http://marc.info/?l=maven-user&m=139615350913286&w=2

http://mail-archives.apache.org/mod_mbox/maven-users/201409.mbox/%3C54101E24.6060304@gmx.de%3E(建议将JDK8更新为>更新20,我做了,但问题仍然存在相同).

任何提示或任何人都经历过这种行为(不幸的是,由于某种原因,它看起来非常"罕见")?非常绝望...

java maven maven-javadoc-plugin java-8

66
推荐指数
5
解决办法
3万
查看次数

使用maven生成Javadoc HTML?

现在我正在使用maven-javadoc-plugin将Javadoc附加到.jar工件上.

但是,如何以html格式生成Javadoc,以便我们可以将其scp到远程服务器以供参考?

谢谢!

maven-3 maven-javadoc-plugin

54
推荐指数
2
解决办法
4万
查看次数

JDK 11+ 和 Javadoc

Exit code: 1 - javadoc: error - The code being documented uses packages in the unnamed module, but the packages defined in https://docs.oracle.com/en/java/javase/11/docs/api/ are in named modules.
Run Code Online (Sandbox Code Playgroud)

有没有人能够使 javadoc 工作而不必将源版本更改为 1.8(如其他论坛中所建议的那样)?我正在使用 JDK v11.0.5 并且问题仍然存在(JDK 12+ 也是如此)。

编辑:此错误源自 maven 并由 maven-javadoc-plugin 抛出。即使使用<source>8</source>配置,我也无法使其适用于 JDK 11+ 。

java javadoc maven maven-javadoc-plugin java-11

52
推荐指数
4
解决办法
1万
查看次数

有没有办法加快Javadoc(需要7分钟)

我正在为一个包含2,509个类的模块构建一个Javadoc.这目前每秒需要7分钟或6个文件.

我试过了

mvn -T 1C install
Run Code Online (Sandbox Code Playgroud)

但是javadoc只使用1个CPU.有没有办法使用更多和/或加快?

我正在使用Oracle JDK 8更新112.我的开发机器有16个内核和128 GB内存.

运行飞行记录器我可以看到只有一个线程 main

在此输入图像描述

对于那些感兴趣的人,我使用了以下选项:

<plugin>
    <artifactId>maven-javadoc-plugin</artifactId>
    <configuration>
        <additionalJOptions>
            <additionalJOption>-J-XX:+UnlockCommercialFeatures</additionalJOption>
            <additionalJOption>-J-XX:+FlightRecorder</additionalJOption>
            <additionalJOption>-J-XX:StartFlightRecording=name=test,filename=/tmp/myrecording-50.jfr,dumponexit=true</additionalJOption>
            <additionalJOption>-J-XX:FlightRecorderOptions=loglevel=debug</additionalJOption>
        </additionalJOptions>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

注意:一种解决方法是:

-Dmaven.javadoc.skip=true
Run Code Online (Sandbox Code Playgroud)

java javadoc maven-javadoc-plugin

44
推荐指数
3
解决办法
1331
查看次数

如何使用Maven持续构建和部署功能分支?

我的团队正在使用功能分支来实现新功能,并不断将快照构建部署到远程仓库中供我们的用户使用.因此,"部署"实际上只意味着"分发到远程Maven存储库".我们目前只为主分支而不是功能分支运行持续集成构建,原因如下:我们使用Maven构建我们的项目并在JAR旁边分发JavaDoc和源代码.

我的计划现在是为每个功能分支构建添加一个分类器,并期望在创建和部署这样的工件时使用一个分类器:

  • 科:硕士
  • 分类:无
  • 文物:foo-${version}.jar,foo-${version}-sources.jar,foo-${version}-javadoc.jar

  • 分支:特征-X

  • 分类器:myfeature
  • 工件:foo-${version}-feature.jar,foo-${version}-sources-feature.jar,foo-${version}-javadoc-feature.jar

我并不真正关心工件的确切命名,我只需要为功能分支单独的main,source和JavaDoc工件.事实证明,JavaDoc插件和源插件都没有考虑配置的分类器,因此有效地覆盖了为我的主构建创建的工件.

我真的不想改变artifactId,虽然这可能会解决问题.你如何处理功能分支和与Maven的持续集成?

continuous-integration feature-branch maven maven-javadoc-plugin maven-source-plugin

36
推荐指数
4
解决办法
1万
查看次数

Lombok Maven javadoc:使用生成的源汇总报告

我有一个用Maven构建的多模块java项目,我想用它来生成javadocs javadoc:aggregate.项目结构如下:

parent
??lomboklib
??other
Run Code Online (Sandbox Code Playgroud)

我也使用Project Lombok项目中生成一些方法.通过首先使用Lombok maven插件运行delombok,我已成功将其配置为使用单个模块.对于单个模块(lomboklib),这将生成源代码

target/generated-sources/delombok
Run Code Online (Sandbox Code Playgroud)

然后由maven-javadoc-pluginjavadoc工具处理.这最初是在这个问题中解决的.

如何配置javadoc:aggregate报告以使用生成的源?

我用Github中的所有模块定义提出了问题的沙箱.理想情况下,我应该能够跑步

mvn clean compile javadoc:aggregate
Run Code Online (Sandbox Code Playgroud)

在父项目中,让整个项目编译并获取整个项目的javadocs.

java code-generation maven lombok maven-javadoc-plugin

32
推荐指数
1
解决办法
1595
查看次数

无法在Javadoc注释中链接到JDK10

从Java 9升级到10后,链接到JDK不再工作时的Javadoc工具生成的文件(例如,对于文件导入java.util.Optional,{@link Optional}呈现为Optional而不是作为Optional;同一个问题有@see,@param,@return,和其他地方,你通常看到的Javadoc链接).

我有一个简单的模块化项目,我使用Maven用的Javadoc插件(sourcetarget选项设置10configuration编译器插件部分).我的理解是,默认情况下它会传递-link https://docs.oracle.com/javase/10/docs/api/给Javadoc工具.我的理解是,从历史上看,Javadoc工具期望一个名为的文本文件package-list存在于被告知要查找外部文档的URL中.Java 8 有一个.Java 9 有一个.Java 10 没有(404错误).显然,Javadoc工具现在输出一个名为element-list而不是package-list模块化项目的文本文件,但似乎也没有提供(Java 9没有提供,但它可用于早期访问的Java 11版本).

通过IntelliJ生成Javadoc并Link to JDK documentation启用该选项会产生相同的结果.它说,它传递-link https://docs.oracle.com/javase/10/docs/api/javadoc.exe,并报告javadoc: error - Error fetching URL: https://docs.oracle.com/javase/10/docs/api/.尽管有错误,它确实输出了Javadoc,但与Maven一样,没有JDK链接.

这应该怎么样?当他们将JDK文档放到网上时,Oracle是否搞砸了?

我的相关部分pom.xml:

<build>
    <plugins>
        <plugin> …
Run Code Online (Sandbox Code Playgroud)

java javadoc maven maven-javadoc-plugin java-10

22
推荐指数
3
解决办法
2120
查看次数

如何在Maven Javadoc插件中禁用Javadoc警告?

我正在使用Maven Javadoc插件.它输出如下警告:

[ERROR] /home/monperrus/spoon/src/main/java/spoon/visitor/CtVisitor.java:144:
      warning: no @param for <T>
Run Code Online (Sandbox Code Playgroud)

如何将这些警告显示为[WARNING](而不是令人困惑[ERROR])?

javadoc maven maven-javadoc-plugin

19
推荐指数
5
解决办法
9173
查看次数

如果创建一个站点,如何避免多次调用javadoc?

我想与javadoc和Maven站点一起部署一个工件.我用

clean javadoc:jar site deploy site:deploy
Run Code Online (Sandbox Code Playgroud)

(在site和之间的分割site:deploy只是为了避免在deploy失败的情况下部署站点).

现在javadoc创建了两次 - 一次进入javadoc:jar,一次进入site.是否可以只创建一次并将其用于javadoc-jarNexus和Maven站点?

java javadoc maven maven-javadoc-plugin maven-site-plugin

11
推荐指数
1
解决办法
248
查看次数