【问题标题】:maven 3 javadoc plugin doesn't take the excludepackagename configmaven 3 javadoc 插件不采用 excludepackagename 配置
【发布时间】:2012-01-17 13:50:37
【问题描述】:

我正在尝试从 javadoc 站点中排除一堆包。

不幸的是,这个插件似乎过着自己的生活,当它被配置为报告插件时,它在移动文件时失败并显示access denied,因此它被更改为普通插件,然后配置为与站点目标一起运行(汇总)。通过这样做,我们生成了 javadoc,并将它按原样发布在站点下。

但是插件的配置参数好像根本没有生效。我尝试移动 <excludePackageNames> 元素 - 既是通用配置,也是聚合目标的特定配置 - 我什至为我们的整个代码库添加了一个排除项,并且仍然生成了所有文件。

我想要做的是简单地删除几个不应该在 javadoc 中的包。谁让这个插件和配置很好玩,排除包?

这是我现在使用的配置,创建了 javadoc,但生成了所有包,包括排除的包。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.8</version>
    <configuration>
        <excludePackageNames>my.company.packages.*</excludePackageNames>
    </configuration>
    <executions>
        <!-- Hook up the Javadoc generation on the site phase -->
        <execution>
            <id>aggregate</id>
            <goals>
                <goal>aggregate</goal>
            </goals>
            <phase>site</phase>
        </execution>
    </executions>
</plugin>

有什么想法吗?

【问题讨论】:

  • 如果遇到拒绝访问错误,则需要修复树中的权限,而不是随意尝试其他实验。
  • 没有修复权限,插件持有一个它试图移动的文件(在任何机器或 Jenkins 服务器上,不仅在本地)。正如我写的那样,它在配置为插件而不是报告插件时有效。此外,这不是主要问题。该插件仍然不接受配置。
  • 如果你能做一个测试用例来演示这个问题,在插件 JIRA 上打开一个 JIRA,然后有人,可能是我,会处理它。
  • 试图将配置移到执行块内?
  • 我确实尝试在块内移动配置,我找到了两个不同的示例并尝试了它们都没有成功。

标签: maven maven-3 maven-javadoc-plugin


【解决方案1】:

我通过在配置中添加sourcepath 参数解决了相同的问题:

<configuration>
    <sourcepath>${project.basedir}/src/main/java</sourcepath>
    <excludePackageNames>my.company.packages.*</excludePackageNames>
</configuration>

上面的配置将排除my.company.packages以下的所有包,但不排除my.company.packages本身。要排除my.company.packages,请改用&lt;excludePackageNames&gt;my.company.packages&lt;/excludePackageNames&gt;

【讨论】:

  • 在多模块项目的 parent.pom 中使用时,源路径对我不起作用。
  • 你知道为什么需要 sourcepath 吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-29
  • 1970-01-01
  • 2018-07-20
  • 2019-10-27
相关资源
最近更新 更多