jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar.properties
author psandoz
Wed, 15 Feb 2017 09:10:51 -0800
changeset 43805 9051877afb06
parent 43512 fd1cea12b2c6
child 44267 00898a596f31
permissions -rw-r--r--
8165035: jar --help-extra should provide information on the -n/--normalize option Reviewed-by: chegar, alanb, mchung, lancea, sherman

#
# Copyright (c) 1999, 2013, 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.
#

error.multiple.main.operations=\
     You may not specify more than one '-cuxtid' options
error.cant.open=\
     can''t open: {0}
error.illegal.option=\
        Illegal option: {0}
error.unrecognized.option=\
    unrecognized option : {0}
error.missing.arg=\
     option {0} requires an argument
error.bad.file.arg=\
     Error parsing file arguments
error.bad.option=\
        One of options -{ctxuid} must be specified.
error.bad.cflag=\
        'c' flag requires manifest or input files to be specified!
error.bad.uflag=\
        'u' flag requires manifest, 'e' flag or input files to be specified!
error.bad.eflag=\
	'e' flag and manifest with the 'Main-Class' attribute cannot be specified \n\
	 together!
error.bad.dflag=\
        '-d, --print-module-descriptor' option requires no input file(s) to be specified: {0}
error.bad.reason=\
        bad reason: {0}, must be one of deprecated, deprecated-for-removal, or incubating
error.nosuch.fileordir=\
        {0} : no such file or directory
error.write.file=\
        Error in writing existing jar file
error.create.dir=\
        {0} : could not create directory
error.incorrect.length=\
        incorrect length while processing: {0}
error.create.tempfile=\
        Could not create a temporary file
error.hash.dep=\
        Hashing module {0} dependences, unable to find module {1} on module path
error.module.options.without.info=\
        One of --module-version or --hash-modules without module-info.class
error.unexpected.module-info=\
        Unexpected module descriptor {0}
error.module.descriptor.not.found=\
        Module descriptor not found
error.invalid.versioned.module.attribute=\
        Invalid module descriptor attribute {0}
error.missing.provider=\
        Service provider not found: {0}
error.release.value.notnumber=\
        release {0} not valid
error.release.value.toosmall=\
        release {0} not valid, must be >= 9
error.release.unexpected.versioned.entry=\
        unexpected versioned entry {0} for release {1}
error.validator.jarfile.exception=\
        can not validate {0}: {1}
error.validator.jarfile.invalid=\
        invalid multi-release jar file {0} deleted
error.validator.bad.entry.name=\
        entry name malformed, {0}
error.validator.version.notnumber=\
        entry name: {0}, does not have a version number
error.validator.entryname.tooshort=\
        entry name: {0}, too short, not a directory
error.validator.isolated.nested.class=\
        entry: {0}, is an isolated nested class
error.validator.new.public.class=\
        entry: {0}, contains a new public class not found in base entries
error.validator.incompatible.class.version=\
        entry: {0}, has a class version incompatible with an earlier version
error.validator.different.api=\
        entry: {0}, contains a class with different api from earlier version
error.validator.names.mismatch=\
        entry: {0}, contains a class with internal name {1}, names do not match
error.validator.info.name.notequal=\
        module-info.class in a versioned directory contains incorrect name
error.validator.info.requires.transitive=\
        module-info.class in a versioned directory contains additional "requires transitive"
error.validator.info.requires.added=\
        module-info.class in a versioned directory contains additional "requires"
error.validator.info.requires.dropped=\
        module-info.class in a versioned directory contains missing "requires"
error.validator.info.exports.notequal=\
        module-info.class in a versioned directory contains different "exports"
error.validator.info.opens.notequal=\
        module-info.class in a versioned directory contains different "opens"
error.validator.info.provides.notequal=\
        module-info.class in a versioned directory contains different "provides"
error.validator.info.version.notequal=\
        {0}: module-info.class in a versioned directory contains different "version"
error.validator.info.manclass.notequal=\
        {0}: module-info.class in a versioned directory contains different "main-class"
warn.validator.identical.entry=\
        Warning: entry {0} contains a class that\n\
        is identical to an entry already in the jar
warn.validator.resources.with.same.name=\
        Warning: entry {0}, multiple resources with same name
warn.validator.concealed.public.class=\
        Warning: entry {0} is a public class\n\
        in a concealed package, placing this jar on the class path will result\n\
        in incompatible public interfaces
warn.release.unexpected.versioned.entry=\
        unexpected versioned entry {0}
out.added.manifest=\
        added manifest
out.added.module-info=\
        added module-info: {0}
out.update.manifest=\
        updated manifest
out.update.module-info=\
        updated module-info: {0}
out.ignore.entry=\
        ignoring entry {0}
out.adding=\
        adding: {0}
out.deflated=\
        (deflated {0}%)
out.stored=\
        (stored 0%)
out.create=\
        \ \ created: {0}
out.extracted=\
        extracted: {0}
out.inflated=\
        \ inflated: {0}
out.size=\
        (in = {0}) (out= {1})

usage.compat=\
\Compatibility Interface:\
\n\
Usage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files] ...\n\
Options:\n\
\ \   -c  create new archive\n\
\ \   -t  list table of contents for archive\n\
\ \   -x  extract named (or all) files from archive\n\
\ \   -u  update existing archive\n\
\ \   -v  generate verbose output on standard output\n\
\ \   -f  specify archive file name\n\
\ \   -m  include manifest information from specified manifest file\n\
\ \   -n  perform Pack200 normalization after creating a new archive\n\
\ \   -e  specify application entry point for stand-alone application \n\
\ \       bundled into an executable jar file\n\
\ \   -0  store only; use no ZIP compression\n\
\ \   -P  preserve leading '/' (absolute path) and ".." (parent directory) components from file names\n\
\ \   -M  do not create a manifest file for the entries\n\
\ \   -i  generate index information for the specified jar files\n\
\ \   -C  change to the specified directory and include the following file\n\
If any file is a directory then it is processed recursively.\n\
The manifest file name, the archive file name and the entry point name are\n\
specified in the same order as the 'm', 'f' and 'e' flags.\n\n\
Example 1: to archive two class files into an archive called classes.jar: \n\
\ \      jar cvf classes.jar Foo.class Bar.class \n\
Example 2: use an existing manifest file 'mymanifest' and archive all the\n\
\ \          files in the foo/ directory into 'classes.jar': \n\
\ \      jar cvfm classes.jar mymanifest -C foo/ .\n

main.usage.summary=\
Usage: jar [OPTION...] [ [--release VERSION] [-C dir] files] ...
main.usage.summary.try=\
Try `jar --help' for more information.

main.help.preopt=\
Usage: jar [OPTION...] [ [--release VERSION] [-C dir] files] ...\n\
jar creates an archive for classes and resources, and can manipulate or\n\
restore individual classes or resources from an archive.\n\
\n\
\ Examples:\n\
\ # Create an archive called classes.jar with two class files:\n\
\ jar --create --file classes.jar Foo.class Bar.class\n\
\ # Create an archive using an existing manifest, with all the files in foo/:\n\
\ jar --create --file classes.jar --manifest mymanifest -C foo/ .\n\
\ # Create a modular jar archive, where the module descriptor is located in\n\
\ # classes/module-info.class:\n\
\ jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n\
\     -C foo/ classes resources\n\
\ # Update an existing non-modular jar to a modular jar:\n\
\ jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n\
\     -C foo/ module-info.class\n\
\ # Create a multi-release jar, placing some files in the META-INF/versions/9 directory:\n\
\ jar --create --file mr.jar -C foo classes --release 9 -C foo9 classes\n\
\n\
To shorten or simplify the jar command, you can specify arguments in a separate\n\
text file and pass it to the jar command with the at sign (@) as a prefix.\n\
\n\
\ Examples:\n\
\ # Read additional options and list of class files from the file classes.list\n\
\ jar --create --file my.jar @classes.list\
\n
main.help.opt.main=\
\ Main operation mode:\n
main.help.opt.main.create=\
\  -c, --create               Create the archive
main.help.opt.main.generate-index=\
\  -i, --generate-index=FILE  Generate index information for the specified jar\n\
\                             archives
main.help.opt.main.list=\
\  -t, --list                 List the table of contents for the archive
main.help.opt.main.update=\
\  -u, --update               Update an existing jar archive
main.help.opt.main.extract=\
\  -x, --extract              Extract named (or all) files from the archive
main.help.opt.main.print-module-descriptor=\
\  -d, --print-module-descriptor  Print the module descriptor
main.help.opt.any=\
\ Operation modifiers valid in any mode:\n\
\n\
\  -C DIR                     Change to the specified directory and include the\n\
\                             following file
main.help.opt.any.file=\
\  -f, --file=FILE            The archive file name. When omitted, either stdin or\n\
\                             stdout is used based on the operation\n\
\      --release VERSION      Places all following files in a versioned directory\n\
\                             of the jar (i.e. META-INF/versions/VERSION/)
main.help.opt.any.verbose=\
\  -v, --verbose              Generate verbose output on standard output
main.help.opt.create=\
\ Operation modifiers valid only in create mode:\n
main.help.opt.create.normalize=\
\  -n, --normalize            Normalize information in the new jar archive\n\
\                             after creation
main.help.opt.create.update=\
\ Operation modifiers valid only in create and update mode:\n
main.help.opt.create.update.main-class=\
\  -e, --main-class=CLASSNAME The application entry point for stand-alone\n\
\                             applications bundled into a modular, or executable,\n\
\                             jar archive
main.help.opt.create.update.manifest=\
\  -m, --manifest=FILE        Include the manifest information from the given\n\
\                             manifest file
main.help.opt.create.update.no-manifest=\
\  -M, --no-manifest          Do not create a manifest file for the entries
main.help.opt.create.update.module-version=\
\      --module-version=VERSION    The module version, when creating a modular\n\
\                             jar, or updating a non-modular jar
main.help.opt.create.update.hash-modules=\
\      --hash-modules=PATTERN Compute and record the hashes of modules \n\
\                             matched by the given pattern and that depend upon\n\
\                             directly or indirectly on a modular jar being\n\
\                             created or a non-modular jar being updated
main.help.opt.create.update.module-path=\
\  -p, --module-path          Location of module dependence for generating\n\
\                             the hash
main.help.opt.create.update.do-not-resolve-by-default=\
\      --do-not-resolve-by-default  Exclude from the default root set of modules
main.help.opt.create.update.warn-if-resolved=\
\      --warn-if-resolved     Hint for a tool to issue a warning if the module\n\
\                             is resolved. One of deprecated, deprecated-for-removal,\n\
\                             or incubating
main.help.opt.create.update.index=\
\ Operation modifiers valid only in create, update, and generate-index mode:\n
main.help.opt.create.update.index.no-compress=\
\  -0, --no-compress          Store only; use no ZIP compression
main.help.opt.other=\
\ Other options:\n
main.help.opt.other.help=\
\  -h, --help[:compat]        Give this, or optionally the compatibility, help
main.help.opt.other.help-extra=\
\      --help-extra           Give help on extra options
main.help.opt.other.version=\
\      --version              Print program version
main.help.postopt=\
\ An archive is a modular jar if a module descriptor, 'module-info.class', is\n\
\ located in the root of the given directories, or the root of the jar archive\n\
\ itself. The following operations are only valid when creating a modular jar,\n\
\ or updating an existing non-modular jar: '--module-version',\n\
\ '--hash-modules', and '--module-path'.\n\
\n\
\ Mandatory or optional arguments to long options are also mandatory or optional\n\
\ for any corresponding short options.