# HG changeset patch # User herrick # Date 1573042405 18000 # Node ID 7249e95cc439254fca56b2697d09ad617e68b305 # Parent fbaf2e6402ad1a18cbd2e8f10b0d61740011235c 8233594: create a new option --bind-servces to pass on to jlink Reviewed-by: asemenyuk, almatvee, kcr diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java Wed Nov 06 07:13:25 2019 -0500 @@ -263,6 +263,10 @@ MODULE_PATH ("module-path", "p", OptionCategories.MODULAR), + BIND_SERVICES ("bind-services", OptionCategories.PROPERTY, () -> { + setOptionValue("bind-services", true); + }), + MAC_SIGN ("mac-sign", "s", OptionCategories.PLATFORM_MAC, () -> { setOptionValue("mac-sign", true); }), diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/JLinkBundlerHelper.java --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/JLinkBundlerHelper.java Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/JLinkBundlerHelper.java Wed Nov 06 07:13:25 2019 -0500 @@ -155,7 +155,8 @@ mainJarType = ModFile.ModType.UnnamedJar; } - boolean bindServices = addModules.isEmpty(); + boolean bindServices = + StandardBundlerParam.BIND_SERVICES.fetchFrom(params); // Modules String mainModule = getMainModule(params); diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java Wed Nov 06 07:13:25 2019 -0500 @@ -320,6 +320,16 @@ (s, p) -> s ); + static final StandardBundlerParam BIND_SERVICES = + new StandardBundlerParam<>( + Arguments.CLIOptions.BIND_SERVICES.getId(), + Boolean.class, + params -> false, + (s, p) -> (s == null || "null".equalsIgnoreCase(s)) ? + true : Boolean.valueOf(s) + ); + + static final StandardBundlerParam VERBOSE = new StandardBundlerParam<>( Arguments.CLIOptions.VERBOSE.getId(), diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java Wed Nov 06 07:13:25 2019 -0500 @@ -84,6 +84,7 @@ options.put(CLIOptions.ARGUMENTS.getId(), USE.LAUNCHER); options.put(CLIOptions.JAVA_OPTIONS.getId(), USE.LAUNCHER); options.put(CLIOptions.ADD_LAUNCHER.getId(), USE.LAUNCHER); + options.put(CLIOptions.BIND_SERVICES.getId(), USE.LAUNCHER); options.put(CLIOptions.LICENSE_FILE.getId(), USE.INSTALL); options.put(CLIOptions.INSTALL_DIR.getId(), USE.INSTALL); diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties Wed Nov 06 07:13:25 2019 -0500 @@ -102,6 +102,9 @@ \ modular jar.\n\ \ (each path is absolute or relative to the current directory)\n\ \ This option can be used multiple times.\n\ +\ --bind-services \n\ +\ Pass on --bind-services option to jlink (which will link in \n\ +\ service provider modules and their dependences) \n\ \ --runtime-image \n\ \ Path of the predefined runtime image that will be copied into\n\ \ the application image\n\ diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties Wed Nov 06 07:13:25 2019 -0500 @@ -102,6 +102,9 @@ \ modular jar.\n\ \ (each path is absolute or relative to the current directory)\n\ \ This option can be used multiple times.\n\ +\ --bind-services \n\ +\ Pass on --bind-services option to jlink (which will link in \n\ +\ service provider modules and their dependences) \n\ \ --runtime-image \n\ \ Path of the predefined runtime image that will be copied into\n\ \ the application image\n\ diff -r fbaf2e6402ad -r 7249e95cc439 src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties --- a/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties Mon Nov 04 15:06:01 2019 -0500 +++ b/src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties Wed Nov 06 07:13:25 2019 -0500 @@ -102,6 +102,9 @@ \ modular jar.\n\ \ (each path is absolute or relative to the current directory)\n\ \ This option can be used multiple times.\n\ +\ --bind-services \n\ +\ Pass on --bind-services option to jlink (which will link in \n\ +\ service provider modules and their dependences) \n\ \ --runtime-image \n\ \ Path of the predefined runtime image that will be copied into\n\ \ the application image\n\