RFR: 8353267: jmod create finds the wrong set of packages when class file are in non-package location
Roger Riggs
rriggs at openjdk.org
Mon Apr 7 15:13:01 UTC 2025
On Tue, 1 Apr 2025 17:33:43 GMT, Alan Bateman <alanb at openjdk.org> wrote:
> `jmod create` maps the contents of the module to a set of packages. This mapping derives illegal package names when class resources are located in non-package locations, e.g. in the META-INF tree. `jlink` also has an issue in this area and doesn't correctly determine if a resource is in a named package when the resource is class file in a non-package location.
Looks fine except for a possible improvement of an exception message to better cover a new case.
src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java line 752:
> 750: * Throws IOException for a .class file that is not module-info.class.
> 751: */
> 752: private void ensureNotClassFile(String name) {
The mention of the "unnamed package" may not always be applicable.
-------------
PR Review: https://git.openjdk.org/jdk/pull/24362#pullrequestreview-2747192692
PR Review Comment: https://git.openjdk.org/jdk/pull/24362#discussion_r2031461542
More information about the core-libs-dev
mailing list