[ https://issues.apache.org/jira/browse/MSOURCES-144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17959375#comment-17959375 ]
Matthias Bünger commented on MSOURCES-144: ------------------------------------------ This project has moved from Jira to GitHub Issues. This issue was migrated to [apache/maven-source-plugin#215|https://github.com/apache/maven-source-plugin/issues/215]. Please visit the GitHub issue to view further activity, add comments, or subscribe to receive notifications. > Include sources for multi-release jars > -------------------------------------- > > Key: MSOURCES-144 > URL: https://issues.apache.org/jira/browse/MSOURCES-144 > Project: Maven Source Plugin (Moved to GitHub Issues) > Issue Type: Improvement > Affects Versions: 3.3.0 > Reporter: Tagir Valeev > Priority: Major > Attachments: multirelease.zip > > > Java 9 introduced multi-release JARs seven years ago (see [JEP > 238|https://openjdk.org/jeps/238]). Since then, Maven support for > multi-release JARs was gradually improved, and now it's quite easy to create > and deploy such a project. However, I see a significant unresolved problem: > the source files for alternative versions of class-files are not > automatically added to the source jar, and I see no easy way to fix this. > Consider the attached example. It contains two versions of > com.example.DefaultVersion class, one for Java 8, and one for Java 9. Execute > `mvn verify`. The resulting multi-release-sample-1.0.jar properly contains > com/example/DefaultVersion.class as Java 8 compiled version and > META-INF/versions/9/com/example/DefaultVersion.class as Java 9 compiled > version. However, the source JAR multi-release-sample-1.0-sources.jar > contains no Java 9-specific version. I expect that the source jar should add > Java 9 source version under the path > META-INF/versions/9/com/example/DefaultVersion.java > This has an unpleasant effect: the library sources are incomplete, so the > library user cannot easily browse them without using decompiler or looking > for the source repository. This complicates navigation and debugging in IDEs. > In fact, I've checked dozens of multi-release JARs in Maven Central, and none > of them contain version-specific sources. It would be great to solve this on > the maven-source-plugin side, so the library maintainers need only to bump > source-plugin version to publish the sources properly. > Thank you in advance, > Tagir Valeev. -- This message was sent by Atlassian Jira (v8.20.10#820010)