You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Gili (Jira)" <ji...@apache.org> on 2020/03/24 05:24:00 UTC
[jira] [Comment Edited] (MJAVADOC-645) Remind user to add
Automatic-Module-Name entry when an unnamed module depends on a named
module
[ https://issues.apache.org/jira/browse/MJAVADOC-645?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17065323#comment-17065323 ]
Gili edited comment on MJAVADOC-645 at 3/24/20, 5:23 AM:
---------------------------------------------------------
Turns out this had nothing to do with the sonatype parent POM. I fixed the problem by adding:
{code:java}
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>module2</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>
</plugin>
{code}
In other words, if an unnamed module depends upon a named module, then one must set the Automatic-Module-Name entry in the JAR manifest; otherwise, the javadoc tool will fail with the aforementioned error.
This is extremely unintuitive. I only got it working because I had an old bug report I filed last year and I saw how I fixed this problem then. Can we please add a check to maven-javadoc-plugin for this situation and output an error message that will point users in the right direction?
was (Author: cowwoc):
Fixed by adding:
{code:java}
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>module2</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>
</plugin>
{code}
In other words, if an unnamed module depends upon a named module, then one must set the Automatic-Module-Name entry in the JAR manifest; otherwise, the javadoc tool will fail with the aforementioned error.
This is extremely unintuitive. I only got it working because I had an old bug report I filed last year and I saw how I fixed this problem then. Can we please add a check to maven-javadoc-plugin for this situation and output an error message that will point users in the right direction?
> Remind user to add Automatic-Module-Name entry when an unnamed module depends on a named module
> -----------------------------------------------------------------------------------------------
>
> Key: MJAVADOC-645
> URL: https://issues.apache.org/jira/browse/MJAVADOC-645
> Project: Maven Javadoc Plugin
> Issue Type: Improvement
> Components: jar, javadoc
> Affects Versions: 3.2.0
> Reporter: Gili
> Priority: Major
> Attachments: testcase.zip
>
>
> 1. Extract testcase
> 2. Run `mvn clean package`
> 3. Build fails with:
> {code:java}
> Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.2.0:jar (attach-javadocs) on project module2: MavenReportException: Error while generating Javadoc:
> Exit code: 1 - javadoc: error - The code being documented uses packages in the unnamed module, but the packages defined in http://nexus.sonatype.org/oss-repository-hosting.html/root/module1/apidocs/ are in named modules.
> Command line was: cmd.exe /X /C ""C:\Program Files\Java\jdk-14+36-1461\bin\javadoc.exe" @options @packages"
> Refer to the generated Javadoc files in 'C:\Users\Gili\Documents\3rdparty\javadoc-jar-mixing-named-and-unnamed-extending-sonatype\module2\target\apidocs' dir.
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)