#
# Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
#

MSG_Help_common=Usage: jpackage <mode> <options>\n\
\n\
where mode is one of: \n\
\  create-image\n\
\          Generates a platform-specific application image.\n\
\  create-installer <type>\n\
\          Generates a platform-specific installer for the application.\n\
\          Valid values for "type" are "msi", "exe", "rpm", "deb", "dmg",\n\
\                           "pkg", and "pkg-app-store".\n\
\          If "type" is omitted, all supported types of installable\n\
\          packages for the current platform will be generated.\n\
\  create-jre-installer <type>\n\
\          Generates a platform-specific installer for JRE.\n\
\          Valid values for "type" are "msi", "exe", "rpm", "deb", "dmg", \n\
\                           and "pkg".\n\
\          If "type" is omitted, all supported types of installable\n\
\          packages for the current platform will be generated.\n\
\          \n\
Sample usages:\n\
--------------\n\
\    Generate an application image from a non-modular jar file:\n\
\        jpackage create-image --input inputdir --output outputdir \\\n\
\            --name AppName --class package.ClassName --main-jar MyJar.jar\n\
\        jpackage create-image -i inputdir -o outputdir -n AppName \\\n\
\            -c package.ClassName -j MyJar.jar\n\
\    Generate an application image from a modular jar file:\n\
\        jpackage create-image --output outputdir --name AppName \\\n\
\            --class package.ClassName -module moduleName -p modulePath\n\
\        jpackage create-image --o outputdir -n AppName \\\n\
\            -c package.ClassName -m moduleName -p modulePath\n\
\    Generate an application installer:\n\
\        jpackage create-installer -i inputdir -o outputdir \\\n\
\            -n "Installer Name" -c package.ClassName -j MyJar.jar\n\
\        jpackage create-installer -o outputdir -n "Installer Name" \\\n\
              --app-image <app image dir>\n\
\    Generate a JRE installer:\n\
\        jpackage create-jre-installer -name <jre-name> -output outputdir\n\
\        jpackage create-jre-installer -n <jre-name> -o outputdir \\\n\
\             --runtime-image <path>\n\
\n\
The following options are valid for all platforms:\n\
\  @<filename> \n\
\          Read options and/or mode from a file \n\
\  --help -h \n\
\          Print the usage text with a list and description of each valid\n\
\          option for the current platform to the output stream, and exit\n\
\  --version -v\n\
\          Print the product version to the output stream and exit\n\
\  --output -o <output path>\n\
\          Path where generated output file is placed\n\
\          (absolute path or relative to the current directory)\n\
\  --input -i <input path>\n\
\          Path of the input directory that contains the files to package\n\
\          (absolute path or relative to the current directory)\n\
\  --files -f <input files>\n\
\          A {0} separated list of files in the input dir to be packaged\n\
\          If omitted, all files in the input directory will be packaged.\n\
\  --name -n <application name>\n\
\          Name of the application\n\
\  --main-jar -j <main jar file>\n\
\          The main JAR of the application\n\
\          (specified as a path relative to the input path)\n\
\          This JAR should contain the main-class.\n\
\  --class -c <class name>\n\
\          Qualified name of the application class to execute\n\
\  --app-version <version string>\n\
\          Version of the application\n\
\  --arguments -a <main class arguments>\n\
\          Command line arguments to pass to the main class if no\n\
\          arguments are specified by the launcher\n\
\  --icon <icon file path>\n\
\          Path of the icon of the application bundle\n\
\          (absolute path or relative to the current directory)\n\
\  --identifier <id string>\n\
\          Machine readable identifier of the application\n\
\          The format must be a DNS name in reverse order,\n\
\          such as com.example.myapplication.\n\
\  --verbose\n\
\          Enables verbose output\n\
\  --strip-native-commands\n\
\          Removes native executables from the custom run-time images\n\
\  --jvm-args <java vm arguments>\n\
\          JVM flags and options to pass to the application\n\
\  --file-associations <file path>\n\
\          Path to a Properties file that contains list of key, value pairs\n\
\          (absolute path or relative to the current directory)\n\
\          The keys "extension", "mime-type", "icon", and "description"\n\
\          can be used to describe the association.\n\
\  --secondary-launcher <file path>\n\
\          Path to a Properties file that contains list of key, value pairs\n\
\          (absolute path or relative to the current directory)\n\
\          The keys  "name" (required), "version", "module", "class",\n\
\          "icon", "arguments", "jvm-args", "win-menu",\n\
\          "win-shortcut", and "win-console" can be used to describe\n\
\          the secondary launcher.\n\
\  --build-root <file path>\n\
\          Path of a new or empty directory used to create temporary files\n\
\          (absolute path or relative to the current directory)\n\
\          If not specified, a temporary directory will be created and\n\
\          removed upon the task completion.\n\
\  --runtime-image <file path>\n\
\          Path of the predefined runtime image that is used to build\n\
\          an application image and installable package\n\
\          (absolute path or relative to the current directory)\n\
\  --app-image <file path>\n\
\          Location of the predefined application image that is used\n\
\          to build an installable package\n\
\          (absolute path or relative to the current directory)\n\
\  --install-dir <file path>\n\
\          Absolute path of the installation directory of the application\n\
\          This option is ignored on Windows, use --win-dir-chooser to\n\
\          provide user the ability to choose the installation directory.\n\
\  --license-file <file path>\n\
\          Path to the license file\n\
\          (absolute path or relative to the current directory)\n\
\  --copyright <copyright string>\n\
\          Copyright for the application\n\
\  --description <description string>\n\
\          Description of the application\n\
\  --category <category string>\n\
\          Category or group of the application\n\
\  --vendor <vendor string>\n\
\          Vendor of the application\n\
\  --force\n\
\          Allow the deletion of any existing output root directory\n\
\          when creating an Application image\n\
\  --resource-dir <path>\n\
\          Path to override jpackage resources\n\
\          Icons, template files, and other resources of jpackage can be\n\
\          over-ridden by adding replacement resources to this directory.\n\
\          (absolute path or relative to the current directory)\n\
\n\
Modular options:\n\
\  --module -m <module name>\n\
\          Main module of the application\n\
\          This module must contain the main-class,\n\
\          and be located on the module path.\n\
\  --module-path -p <module path>\n\
\          Path JLink looks in for modules when packaging the Java Runtime\n\
\          (absolute path or relative to the current directory)\n\
\  --add-modules <module list>\n\
\          A {0} separated list of modules to add to JImage creation,\n\
\          including possible services\n\
\  --limit-modules <module list>\n\
\          A {0} separated list of Modules to limit JImage creation to\n\

MSG_Help_mac=\nThe following options are valid for Mac OS X platforms:\n\
\  --mac-sign\n\
\          Request that the bundle be signed\n\
\  --mac-bundle-name <name string>\n\
\          Name of the application as it appears in the Menu Bar\n\
\          This can be different from the application name.\n\
\          This name must be less than 16 characters long and be suitable for\n\
\          displaying in the menu bar and the application Info window.\n\
\          Defaults to the application name.\n\
\  --mac-bundle-identifier <ID string>\n\
\          An identifier that uniquely identifies the application for MacOSX\n\
\          (and on the Mac App Store)\n\
\          May only use alphanumeric (A-Z,a-z,0-9), hyphen (-),\n\
\          and period (.) characters.\n\
\  --mac-app-store-category <category string>\n\
\          Mac App Store Categories\n\
\          Note that the key is the string shown to\n\
\          the user and the value is the ID of the category.\n\
\  --mac-app-store-entitlements <file path>\n\
\          Path of a custom mac app store entitlements file\n\
\          (absolute path or relative to the current directory)\n\
\  --mac-bundle-signing-prefix <prefix string>\n\
\          When signing the application bundle, this value is prefixed to all\n\
\          components that need to be signed that don't have\n\
\          an existing bundle identifier.\n\
\  --mac-signing-key-user-name <user name>\n\
\          User name portion of the typical\n\
\          "Mac Developer ID Application: <user name>" signing key\n\
\  --mac-signing-keychain <file path>\n\
\          Path of the keychain to use\n\
\          (absolute path or relative to the current directory)\n\
\          If not specified, the standard keychains are used.\n\

MSG_Help_linux=\nThe following options are valid for Linux platforms:\n\
\  --linux-bundle-name <bundle name>\n\
\          Name for Linux bundle, defaults to the application name\n\
\  --linux-package-deps\n\
\          Required packages or capabilities for the application\n\
\  --linux-rpm-license-type <type string>\n\
\          Type of the license ("License: <value>" of the RPM .spec)\n\
\  --linux-deb-maintainer <email address>\n\
\          Maintainer for .deb bundle\n\

MSG_Help_win=\nThe following options are valid for Windows platforms:\n\
\  --win-menu\n\
\          Adds the application to the system menu\n\
\  --win-menu-group <menu group name>\n\
\          Start Menu group this application is placed in\n\
\  --win-per-user-install\n\
\          Request to perform an install on a per-user basis\n\
\  --win-dir-chooser\n\
\          Adds a dialog to enable the user to choose a directory in which\n\
\          the product is installed\n\
\  --win-registry-name <registry name>\n\
\          Name of the application for registry references.\n\
\          The default is the Application Name with only\n\
\          alphanumerics, dots, and dashes (no whitespace)\n\
\  --win-upgrade-uuid <id string>\n\
\          UUID associated with upgrades for this package\n\
\  --win-shortcut\n\
\          Creates a desktop shortcut for the application\n\
\  --win-console\n\
\          Creates a console launcher for the application, should be\n\
\          specified for application which requires console interactions\n\

MSG_Help_no_args=Usage: jpackage <mode> <options>\n\
\Use jpackage --help (or -h) for a list of possible options\

