RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v12]

ExE Boss duke at openjdk.org
Wed Mar 22 04:00:08 UTC 2023


On Fri, 17 Mar 2023 17:01:43 GMT, Adam Sotona <asotona at openjdk.org> wrote:

>> jdk.jlink internal plugins are heavily using ASM
>> 
>> This patch converts ASM calls to Classfile API.
>> 
>> Please review.
>> Thanks,
>> Adam
>
> Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 220 commits:
> 
>  - Merge branch 'master' into JDK-8294972-jlink-plugins
>  - SystemModulesPlugin::genClassBytes rename
>  - SystemModulesPlugin::getClassBytes rename
>  - Revert "implementation of custom ResourceHelper in IncludeLocalesPlugin"
>  - remaining cleanup in SystemModulesPlugin
>  - implementation of custom ResourceHelper in IncludeLocalesPlugin
>  - fixed SystemModulesPlugin
>  - fixed StripJavaDebugAttribute to drop line numbers from code
>  - long lines wrapped
>  - StripJavaDebugAttributesPlugin transformation fixed
>  - ... and 210 more: https://git.openjdk.org/jdk/compare/4486f1b7...4e5b9651

src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/SystemModulesPlugin.java line 112:

> 110:     private static final String DEFAULT_SYSTEM_MODULES_CLASSNAME =
> 111:             SYSTEM_MODULES_CLASS_PREFIX + "default";
> 112:     private static final ClassDesc CD_SYSTEM_MODULES =

Suggestion:

    private static final ClassDesc CD_ALL_SYSTEM_MODULES =
            ClassDesc.ofInternalName(ALL_SYSTEM_MODULES_CLASSNAME);
    private static final ClassDesc CD_SYSTEM_MODULES =

src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/SystemModulesPlugin.java line 272:

> 270: 
> 271:         // generate SystemModulesMap
> 272:         rn = genSystemModulesMapClass(ClassDesc.ofInternalName(ALL_SYSTEM_MODULES_CLASSNAME),

`ClassDesc.ofInternalName(ALL_SYSTEM_MODULES_CLASSNAME)` should probably be made into a constant.

Suggestion:

        rn = genSystemModulesMapClass(CD_ALL_SYSTEM_MODULES,

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/12944#discussion_r1141018698
PR Review Comment: https://git.openjdk.org/jdk/pull/12944#discussion_r1141018455


More information about the core-libs-dev mailing list