[
https://issues.apache.org/jira/browse/AXIS2-6040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18075175#comment-18075175
]
Robert Lazarski commented on AXIS2-6040:
----------------------------------------
[~cortlepp] you're correct — apologies for the confusion. Here's what happened:
1. The first attempt added a global Automatic-Module-Name in the parent POM
using ${project.groupId}.${project.artifactId}. This
produced names like org.apache.axis2.axis2-resource-bundle — invalid because
Java module names cannot contain hyphens.
2. The commit I referenced (09bb62172d) removed the broken global config, but
I mistakenly marked the issue as fixed without adding
the per-module replacements. My Jira comment described the intent of the
first attempt, not what actually shipped. That's on me.
3. This is now actually fixed in commit d208475d45. All 24 JAR-producing
modules define Automatic-Module-Name individually in their
own pom.xml with hyphens replaced by dots:
▎ axis2-kernel -> org.apache.axis2.kernel
▎ axis2-json -> org.apache.axis2.json
▎ axis2-transport-http -> org.apache.axis2.transport.http
▎ axis2-resource-bundle -> org.apache.axis2.resource.bundle
▎ Verification after mvn package:
▎ jar --describe-module
--file=modules/kernel/target/axis2-kernel-2.0.1-SNAPSHOT.jar
▎ # Expected: org.apache.axis2.kernel automatic
Thanks for catching this — the GHA CI build will confirm all 24 modules
produce valid manifest entries.
> Define Automatic-Module-Name for Java9 module system compatibility
> ------------------------------------------------------------------
>
> Key: AXIS2-6040
> URL: https://issues.apache.org/jira/browse/AXIS2-6040
> Project: Axis2
> Issue Type: Improvement
> Components: kernel
> Affects Versions: 1.8.2
> Reporter: Wolfgang Knauf
> Priority: Minor
> Fix For: 2.0.1
>
>
> After Java9 module system compatibility was fixed through
> https://issues.apache.org/jira/browse/AXIS2-4311, I used Eclipse to create a
> "module-info.java" to my small sample project.
> This is the resulting module-info.java file:
> {{module myprojectname}}
> {
> {{ exports my.own.project.package;}}
> {{ requires axiom.api;}}
> {{ requires axis2.adb;}}
> {{ requires axis2.kernel;}}
> {{ requires commons.logging;}}
> {{ requires jakarta.activation;}}
> {{ requires java.rmi;}}
> {{ requires java.xml;}}
> {{}}}
>
> This results in four eclipse warnings:
> {{Name of automatic module 'axiom.api' is unstable, it is derived from the
> module's file name.}}
> {{Name of automatic module 'axis2.adb' is unstable, it is derived from the
> module's file name.}}
> {{Name of automatic module 'axis2.kernel' is unstable, it is derived from the
> module's file name.}}
> {{Name of automatic module 'commons.logging' is unstable, it is derived from
> the module's file name.}}
> As far as I understand it, it would be sufficient to add a
> "Automatic-Module-Name" entry to Manifest.mf for the Axis2 jars- see e.g.
> [https://github.com/ReactiveX/RxJava/issues/5618]
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]