[
https://issues.apache.org/jira/browse/LOG4J2-3688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882916#comment-17882916
]
Björn Kautler commented on LOG4J2-3688:
---------------------------------------
👌
> JSpecify uses wrong scope in module-info
> ----------------------------------------
>
> Key: LOG4J2-3688
> URL: https://issues.apache.org/jira/browse/LOG4J2-3688
> Project: Log4j 2
> Issue Type: Bug
> Affects Versions: 2.24.0
> Reporter: Björn Kautler
> Priority: Critical
>
> With 2.24.0 JSpecify annotations are used now.
> It is good that there is no hard dependency on it.
> Even though {{optional}} would probably more apply than {{{}provided{}}},
> because log4j does not require that the runtime provides it.
> But in the {{module-info}} file, it has the scope {{requires static
> transitive}} which means that downstream projects that have
> {{{}log4j-core{}}}} in their compile classpath also need to add JSpecify if
> they compile with JPMS.
> {{requires static}} should be the more appropriate JPMS scope.
> I would have made a PR, but I do not see where the {{module-info}} is coming
> from. I guess it is somehow generated. Maybe from the POM scope and fixing
> that to {{optional}} would also fix the JPMS scope? Just guessing.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)