【发布时间】:2021-08-21 12:38:49
【问题描述】:
我有一个带有两个 jpms 模块的示例 project。这是一个具有一个父模块和两个子模块的 maven 项目。
父 pom:
...
<modules>
<module>foo.api</module>
<module>foo.impl</module>
</modules>
...
API 模块 pom:
...
<groupId>com.foo</groupId>
<artifactId>foo.api</artifactId>
...
API 模块信息:
module com.foo.api {
requires org.slf4j;
exports com.foo.api;
}
这些是我对 maven-javadoc-plugin 的设置(在父 pom 中):
<reporting>
<excludeDefaults>true</excludeDefaults>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.3.0</version>
<reportSets>
<reportSet>
<reports>
<report>javadoc-no-fork</report>
<report>test-javadoc-no-fork</report>
</reports>
</reportSet>
</reportSets>
<configuration>
<doclint>none</doclint>
<dependencySourceIncludes>
<dependencySourceInclude>com.foo:${project.artifactId}</dependencySourceInclude>
</dependencySourceIncludes>
<doctitle>Title - ${project.version}</doctitle>
<includeDependencySources>false</includeDependencySources>
<windowtitle>Title</windowtitle>
<additionalJOptions>
<additionalJOption>--no-module-directories</additionalJOption>
</additionalJOptions>
</configuration>
</plugin>
</plugins>
</reporting>
当我运行mvn javadoc:javadoc 时,我得到:
Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.2.0:javadoc (default-cli) on project foo.api: An error has occurred in Javadoc report generation:
Exit code: 1 - error: module not found: com.foo.api
谁能说说怎么解决?
【问题讨论】:
-
module not found:
com.foo.api是针对 maven 模块的,对吧?那里有一些错字还是我错过了在共享配置中找到这个模块? -
@Naman 不,这不是类型。在我的情况下,模块信息中的模块名称!= maven模块名称。这就是问题所在。
-
我在示例 repo 中重现了您的问题,但我认为您可以做更多的修剪。继续修剪,直到您无法再重现您的问题,这将是一个线索。你能用一个模块来做吗?你能删除所有额外的依赖项吗?
标签: java maven javadoc java-module maven-javadoc-plugin