jdk/src/share/classes/sun/security/tools/JarSignerResources_zh_CN.java
changeset 8203 e5debcae2183
parent 7668 d4a77089c587
child 9035 1255eb81cc2f
equal deleted inserted replaced
7931:7a8e3835357d 8203:e5debcae2183
    33 public class JarSignerResources_zh_CN extends java.util.ListResourceBundle {
    33 public class JarSignerResources_zh_CN extends java.util.ListResourceBundle {
    34 
    34 
    35     private static final Object[][] contents = {
    35     private static final Object[][] contents = {
    36 
    36 
    37         // shared (from jarsigner)
    37         // shared (from jarsigner)
    38         {" ", " "},
    38         {"SPACE", " "},
    39         {"  ", "  "},
    39         {"2SPACE", "  "},
    40         {"      ", "      "},
    40         {"6SPACE", "      "},
    41         {", ", ", "},
    41         {"COMMA", ", "},
    42 
    42 
    43         {"provName not a provider", "{0} \u4e0d\u662f\u63d0\u4f9b\u8005"},
    43         {"provName.not.a.provider", "{0}\u4E0D\u662F\u63D0\u4F9B\u65B9"},
    44         {"signerClass is not a signing mechanism", "{0} \u4e0d\u662f\u7b7e\u540d\u673a\u5236"},
    44         {"signerClass.is.not.a.signing.mechanism", "{0}\u4E0D\u662F\u7B7E\u540D\u673A\u5236"},
    45         {"jarsigner error: ", "jarsigner \u9519\u8bef\uff1a "},
    45         {"jarsigner.error.", "jarsigner \u9519\u8BEF: "},
    46         {"Illegal option: ", "\u975e\u6cd5\u9009\u9879\uff1a "},
    46         {"Illegal.option.", "\u975E\u6CD5\u9009\u9879: "},
    47         {"-keystore must be NONE if -storetype is {0}",
    47         {".keystore.must.be.NONE.if.storetype.is.{0}",
    48                 "\u5982\u679c -storetype \u4e3a {0}\uff0c\u5219 -keystore \u5fc5\u987b\u4e3a NONE"},
    48                 "\u5982\u679C -storetype \u4E3A {0}, \u5219 -keystore \u5FC5\u987B\u4E3A NONE"},
    49         {"-keypass can not be specified if -storetype is {0}",
    49         {".keypass.can.not.be.specified.if.storetype.is.{0}",
    50                 "\u5982\u679c -storetype \u4e3a {0}\uff0c\u5219\u4e0d\u80fd\u6307\u5b9a -keypass"},
    50                 "\u5982\u679C -storetype \u4E3A {0}, \u5219\u4E0D\u80FD\u6307\u5B9A -keypass"},
    51         {"If -protected is specified, then -storepass and -keypass must not be specified",
    51         {"If.protected.is.specified.then.storepass.and.keypass.must.not.be.specified",
    52                 "\u5982\u679c\u6307\u5b9a\u4e86 -protected\uff0c\u5219\u4e0d\u80fd\u6307\u5b9a -storepass \u548c -keypass"},
    52                 "\u5982\u679C\u6307\u5B9A\u4E86 -protected, \u5219\u4E0D\u80FD\u6307\u5B9A -storepass \u548C -keypass"},
    53         {"If keystore is not password protected, then -storepass and -keypass must not be specified",
    53         {"If.keystore.is.not.password.protected.then.storepass.and.keypass.must.not.be.specified",
    54                  "\u5982\u679c\u5bc6\u94a5\u5e93\u672a\u53d7\u5bc6\u7801\u4fdd\u62a4\uff0c\u5219\u8bf7\u52ff\u6307\u5b9a -storepass \u548c -keypass"},
    54                  "\u5982\u679C\u5BC6\u94A5\u5E93\u672A\u53D7\u53E3\u4EE4\u4FDD\u62A4, \u5219\u4E0D\u80FD\u6307\u5B9A -storepass \u548C -keypass"},
    55         {"Usage: jarsigner [options] jar-file alias",
    55         {"Usage.jarsigner.options.jar.file.alias",
    56                 "\u7528\u6cd5\uff1ajarsigner [\u9009\u9879] jar \u6587\u4ef6\u522b\u540d"},
    56                 "\u7528\u6CD5: jarsigner [\u9009\u9879] jar \u6587\u4EF6\u522B\u540D"},
    57         {"       jarsigner -verify [options] jar-file [alias...]",
    57         {".jarsigner.verify.options.jar.file.alias.",
    58                 "       jarsigner -verify [\u9009\u9879] jar \u6587\u4ef6 [\u522b\u540d...]"},
    58                 "       jarsigner -verify [options] jar-file [alias...]"},
    59         {"[-keystore <url>]           keystore location",
    59         {".keystore.url.keystore.location",
    60                 "[-keystore <url>]           \u5bc6\u94a5\u5e93\u4f4d\u7f6e"},
    60                 "[-keystore <url>]           \u5BC6\u94A5\u5E93\u4F4D\u7F6E"},
    61         {"[-storepass <password>]     password for keystore integrity",
    61         {".storepass.password.password.for.keystore.integrity",
    62             "[-storepass <\u53e3\u4ee4>]         \u7528\u4e8e\u5bc6\u94a5\u5e93\u5b8c\u6574\u6027\u7684\u53e3\u4ee4"},
    62             "[-storepass <\u53E3\u4EE4>]         \u7528\u4E8E\u5BC6\u94A5\u5E93\u5B8C\u6574\u6027\u7684\u53E3\u4EE4"},
    63         {"[-storetype <type>]         keystore type",
    63         {".storetype.type.keystore.type",
    64                 "[-storetype <\u7c7b\u578b>]         \u5bc6\u94a5\u5e93\u7c7b\u578b"},
    64                 "[-storetype <\u7C7B\u578B>]         \u5BC6\u94A5\u5E93\u7C7B\u578B"},
    65         {"[-keypass <password>]       password for private key (if different)",
    65         {".keypass.password.password.for.private.key.if.different.",
    66                 "[-keypass <\u53e3\u4ee4>]           \u4e13\u7528\u5bc6\u94a5\u7684\u53e3\u4ee4\uff08\u5982\u679c\u4e0d\u540c\uff09"},
    66                 "[-keypass <\u53E3\u4EE4>]           \u79C1\u6709\u5BC6\u94A5\u7684\u53E3\u4EE4 (\u5982\u679C\u4E0D\u540C)"},
    67         {"[-certchain <file>]         name of alternative certchain file",
    67         {".certchain.file.name.of.alternative.certchain.file",
    68                 "[-certchain <\u6587\u4ef6>]         \u66ff\u4ee3\u8bc1\u4e66\u94fe\u6587\u4ef6\u7684\u540d\u79f0"},
    68                 "[-certchain <file>]         \u66FF\u4EE3 certchain \u6587\u4EF6\u7684\u540D\u79F0"},
    69         {"[-sigfile <file>]           name of .SF/.DSA file",
    69         {".sigfile.file.name.of.SF.DSA.file",
    70                 "[-sigfile <\u6587\u4ef6>]           .SF/.DSA \u6587\u4ef6\u7684\u540d\u79f0"},
    70                 "[-sigfile <\u6587\u4EF6>]           .SF/.DSA \u6587\u4EF6\u7684\u540D\u79F0"},
    71         {"[-signedjar <file>]         name of signed JAR file",
    71         {".signedjar.file.name.of.signed.JAR.file",
    72                 "[-signedjar <\u6587\u4ef6>]         \u5df2\u7b7e\u540d\u7684 JAR \u6587\u4ef6\u7684\u540d\u79f0"},
    72                 "[-signedjar <\u6587\u4EF6>]         \u5DF2\u7B7E\u540D\u7684 JAR \u6587\u4EF6\u7684\u540D\u79F0"},
    73         {"[-digestalg <algorithm>]    name of digest algorithm",
    73         {".digestalg.algorithm.name.of.digest.algorithm",
    74                 "[-digestalg <\u7b97\u6cd5>]    \u6458\u8981\u7b97\u6cd5\u7684\u540d\u79f0"},
    74                 "[-digestalg <\u7B97\u6CD5>]    \u6458\u8981\u7B97\u6CD5\u7684\u540D\u79F0"},
    75         {"[-sigalg <algorithm>]       name of signature algorithm",
    75         {".sigalg.algorithm.name.of.signature.algorithm",
    76                 "[-sigalg <\u7b97\u6cd5>]       \u7b7e\u540d\u7b97\u6cd5\u7684\u540d\u79f0"},
    76                 "[-sigalg <\u7B97\u6CD5>]       \u7B7E\u540D\u7B97\u6CD5\u7684\u540D\u79F0"},
    77         {"[-verify]                   verify a signed JAR file",
    77         {".crl.auto.file.include.CRL.in.signed.jar",
    78                 "[-verify]                   \u9a8c\u8bc1\u5df2\u7b7e\u540d\u7684 JAR \u6587\u4ef6"},
    78                 "[-crl[:auto| <file>]        \u5728\u5DF2\u7B7E\u540D\u7684 jar \u4E2D\u5305\u542B CRL"},
    79         {"[-verbose[:suboptions]]     verbose output when signing/verifying.",
    79         {".verify.verify.a.signed.JAR.file",
    80                 "[-verbose[:\u5b50\u9009\u9879]]     \u7b7e\u540d/\u9a8c\u8bc1\u65f6\u8f93\u51fa\u8be6\u7ec6\u4fe1\u606f\u3002"},
    80                 "[-verify]                   \u9A8C\u8BC1\u5DF2\u7B7E\u540D\u7684 JAR \u6587\u4EF6"},
    81         {"                            suboptions can be all, grouped or summary",
    81         {".verbose.suboptions.verbose.output.when.signing.verifying.",
    82                 "                            \u5b50\u9009\u9879\u53ef\u4ee5\u4e3a all\u3001grouped \u6216 summary"},
    82                 "[-verbose[:suboptions]]     \u7B7E\u540D/\u9A8C\u8BC1\u65F6\u8F93\u51FA\u8BE6\u7EC6\u4FE1\u606F\u3002"},
    83         {"[-certs]                    display certificates when verbose and verifying",
    83         {".suboptions.can.be.all.grouped.or.summary",
    84                 "[-certs]                    \u8f93\u51fa\u8be6\u7ec6\u4fe1\u606f\u548c\u9a8c\u8bc1\u65f6\u663e\u793a\u8bc1\u4e66"},
    84                 "                            \u5B50\u9009\u9879\u53EF\u4EE5\u662F all, grouped \u6216 summary"},
    85         {"[-tsa <url>]                location of the Timestamping Authority",
    85         {".certs.display.certificates.when.verbose.and.verifying",
    86                 "[-tsa <url>]                \u65f6\u95f4\u6233\u673a\u6784\u7684\u4f4d\u7f6e"},
    86                 "[-certs]                    \u8F93\u51FA\u8BE6\u7EC6\u4FE1\u606F\u548C\u9A8C\u8BC1\u65F6\u663E\u793A\u8BC1\u4E66"},
    87         {"[-tsacert <alias>]          public key certificate for Timestamping Authority",
    87         {".tsa.url.location.of.the.Timestamping.Authority",
    88                 "[-tsacert <\u522b\u540d>]           \u65f6\u95f4\u6233\u673a\u6784\u7684\u516c\u5171\u5bc6\u94a5\u8bc1\u4e66"},
    88                 "[-tsa <url>]                \u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u7684\u4F4D\u7F6E"},
    89         {"[-altsigner <class>]        class name of an alternative signing mechanism",
    89         {".tsacert.alias.public.key.certificate.for.Timestamping.Authority",
    90                 "[-altsigner <\u7c7b>]           \u66ff\u4ee3\u7684\u7b7e\u540d\u673a\u5236\u7684\u7c7b\u540d"},
    90                 "[-tsacert <\u522B\u540D>]           \u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u7684\u516C\u5171\u5BC6\u94A5\u8BC1\u4E66"},
    91         {"[-altsignerpath <pathlist>] location of an alternative signing mechanism",
    91         {".altsigner.class.class.name.of.an.alternative.signing.mechanism",
    92                 "[-altsignerpath <\u8def\u5f84\u5217\u8868>] \u66ff\u4ee3\u7684\u7b7e\u540d\u673a\u5236\u7684\u4f4d\u7f6e"},
    92                 "[-altsigner <\u7C7B>]           \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u7C7B\u540D"},
    93         {"[-internalsf]               include the .SF file inside the signature block",
    93         {".altsignerpath.pathlist.location.of.an.alternative.signing.mechanism",
    94                 "[-internalsf]               \u5728\u7b7e\u540d\u5757\u5185\u5305\u542b .SF \u6587\u4ef6"},
    94                 "[-altsignerpath <\u8DEF\u5F84\u5217\u8868>] \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u4F4D\u7F6E"},
    95         {"[-sectionsonly]             don't compute hash of entire manifest",
    95         {".internalsf.include.the.SF.file.inside.the.signature.block",
    96                 "[-sectionsonly]             \u4e0d\u8ba1\u7b97\u6574\u4e2a\u6e05\u5355\u7684\u6563\u5217"},
    96                 "[-internalsf]               \u5728\u7B7E\u540D\u5757\u5185\u5305\u542B .SF \u6587\u4EF6"},
    97         {"[-protected]                keystore has protected authentication path",
    97         {".sectionsonly.don.t.compute.hash.of.entire.manifest",
    98                 "[-protected]                \u5bc6\u94a5\u5e93\u5df2\u4fdd\u62a4\u9a8c\u8bc1\u8def\u5f84"},
    98                 "[-sectionsonly]             \u4E0D\u8BA1\u7B97\u6574\u4E2A\u6E05\u5355\u7684\u6563\u5217"},
    99         {"[-providerName <name>]      provider name",
    99         {".protected.keystore.has.protected.authentication.path",
   100                 "[-providerName <\u540d\u79f0>]      \u63d0\u4f9b\u8005\u540d\u79f0"},
   100                 "[-protected]                \u5BC6\u94A5\u5E93\u5177\u6709\u53D7\u4FDD\u62A4\u9A8C\u8BC1\u8DEF\u5F84"},
   101         {"[-providerClass <class>     name of cryptographic service provider's",
   101         {".providerName.name.provider.name",
   102                 "[-providerClass <\u7c7b>        \u52a0\u5bc6\u670d\u52a1\u63d0\u4f9b\u8005\u7684\u540d\u79f0"},
   102                 "[-providerName <\u540D\u79F0>]      \u63D0\u4F9B\u65B9\u540D\u79F0"},
   103         {"  [-providerArg <arg>]] ... master class file and constructor argument",
   103         {".providerClass.class.name.of.cryptographic.service.provider.s",
   104                 "  [-providerArg <\u53c2\u6570>]] ... \u4e3b\u7c7b\u6587\u4ef6\u548c\u6784\u9020\u51fd\u6570\u53c2\u6570"},
   104                 "[-providerClass <\u7C7B>        \u52A0\u5BC6\u670D\u52A1\u63D0\u4F9B\u65B9\u7684\u540D\u79F0"},
   105         {"[-strict]                   treat warnings as errors",
   105         {".providerArg.arg.master.class.file.and.constructor.argument",
   106                 "[-strict]                   \u5c06\u8b66\u544a\u89c6\u4e3a\u9519\u8bef"},
   106                 "  [-providerArg <\u53C2\u6570>]]... \u4E3B\u7C7B\u6587\u4EF6\u548C\u6784\u9020\u5668\u53C2\u6570"},
   107         {"Option lacks argument", "\u9009\u9879\u7f3a\u5c11\u53c2\u6570"},
   107         {".strict.treat.warnings.as.errors",
   108         {"Please type jarsigner -help for usage", "\u6709\u5173\u7528\u6cd5\uff0c\u8bf7\u952e\u5165 jarsigner -help"},
   108                 "[-strict]                   \u5C06\u8B66\u544A\u89C6\u4E3A\u9519\u8BEF"},
   109         {"Please specify jarfile name", "\u8bf7\u6307\u5b9a jarfile \u540d\u79f0"},
   109         {"Option.lacks.argument", "\u9009\u9879\u7F3A\u5C11\u53C2\u6570"},
   110         {"Please specify alias name", "\u8bf7\u6307\u5b9a\u522b\u540d"},
   110         {"Please.type.jarsigner.help.for.usage", "\u8BF7\u952E\u5165 jarsigner -help \u4EE5\u4E86\u89E3\u7528\u6CD5"},
   111         {"Only one alias can be specified", "\u53ea\u80fd\u6307\u5b9a\u4e00\u4e2a\u522b\u540d"},
   111         {"Please.specify.jarfile.name", "\u8BF7\u6307\u5B9A jarfile \u540D\u79F0"},
   112         {"This jar contains signed entries which is not signed by the specified alias(es).",
   112         {"Please.specify.alias.name", "\u8BF7\u6307\u5B9A\u522B\u540D"},
   113                  "\u6b64 jar \u5305\u542b\u6307\u5b9a\u522b\u540d\u672a\u7b7e\u540d\u7684\u7b7e\u540d\u6761\u76ee\u3002"},
   113         {"Only.one.alias.can.be.specified", "\u53EA\u80FD\u6307\u5B9A\u4E00\u4E2A\u522B\u540D"},
   114         {"This jar contains signed entries that's not signed by alias in this keystore.",
   114         {"This.jar.contains.signed.entries.which.is.not.signed.by.the.specified.alias.es.",
   115                   "\u6b64 jar \u5305\u542b\u6b64\u5bc6\u94a5\u5e93\u4e2d\u522b\u540d\u672a\u7b7e\u540d\u7684\u7b7e\u540d\u6761\u76ee\u3002"},
   115                  "\u6B64 jar \u5305\u542B\u672A\u7531\u6307\u5B9A\u522B\u540D\u7B7E\u540D\u7684\u5DF2\u7B7E\u540D\u6761\u76EE\u3002"},
       
   116         {"This.jar.contains.signed.entries.that.s.not.signed.by.alias.in.this.keystore.",
       
   117                   "\u6B64 jar \u5305\u542B\u672A\u7531\u6B64\u5BC6\u94A5\u5E93\u4E2D\u7684\u522B\u540D\u7B7E\u540D\u7684\u5DF2\u7B7E\u540D\u6761\u76EE\u3002"},
   116         {"s", "s"},
   118         {"s", "s"},
   117         {"m", "m"},
   119         {"m", "m"},
   118         {"k", "k"},
   120         {"k", "k"},
   119         {"i", "i"},
   121         {"i", "i"},
   120         {"(and %d more)", "\uff08\u8fd8\u6709 %d\uff09"},
   122         {".and.d.more.", "(%d \u53CA\u4EE5\u4E0A)"},
   121         {"  s = signature was verified ",
   123         {".s.signature.was.verified.",
   122                 "  s = \u5df2\u9a8c\u8bc1\u7b7e\u540d "},
   124                 "  s = \u5DF2\u9A8C\u8BC1\u7B7E\u540D "},
   123         {"  m = entry is listed in manifest",
   125         {".m.entry.is.listed.in.manifest",
   124                 "  m = \u5728\u6e05\u5355\u4e2d\u5217\u51fa\u6761\u76ee"},
   126                 "  m = \u5728\u6E05\u5355\u4E2D\u5217\u51FA\u6761\u76EE"},
   125         {"  k = at least one certificate was found in keystore",
   127         {".k.at.least.one.certificate.was.found.in.keystore",
   126                 "  k = \u5728\u5bc6\u94a5\u5e93\u4e2d\u81f3\u5c11\u627e\u5230\u4e86\u4e00\u4e2a\u8bc1\u4e66"},
   128                 "  k = \u5728\u5BC6\u94A5\u5E93\u4E2D\u81F3\u5C11\u627E\u5230\u4E86\u4E00\u4E2A\u8BC1\u4E66"},
   127         {"  i = at least one certificate was found in identity scope",
   129         {".i.at.least.one.certificate.was.found.in.identity.scope",
   128                 "  i = \u5728\u8eab\u4efd\u4f5c\u7528\u57df\u5185\u81f3\u5c11\u627e\u5230\u4e86\u4e00\u4e2a\u8bc1\u4e66"},
   130                 "  i = \u5728\u8EAB\u4EFD\u4F5C\u7528\u57DF\u5185\u81F3\u5C11\u627E\u5230\u4E86\u4E00\u4E2A\u8BC1\u4E66"},
   129         {"  X = not signed by specified alias(es)",
   131         {".X.not.signed.by.specified.alias.es.",
   130                 "  X = \u672a\u7ecf\u6307\u5b9a\u522b\u540d\u7b7e\u540d"},
   132                 "  X = \u672A\u7531\u6307\u5B9A\u522B\u540D\u7B7E\u540D"},
   131         {"no manifest.", "\u6ca1\u6709\u6e05\u5355\u3002"},
   133         {"no.manifest.", "\u6CA1\u6709\u6E05\u5355\u3002"},
   132         {"(Signature related entries)","\uff08\u4e0e\u7b7e\u540d\u6709\u5173\u7684\u6761\u76ee\uff09"},
   134         {".Signature.related.entries.","(\u4E0E\u7B7E\u540D\u76F8\u5173\u7684\u6761\u76EE)"},
   133         {"(Unsigned entries)", "\uff08\u672a\u7b7e\u540d\u7684\u6761\u76ee\uff09"},
   135         {".Unsigned.entries.", "(\u672A\u7B7E\u540D\u6761\u76EE)"},
   134         {"jar is unsigned. (signatures missing or not parsable)",
   136         {"jar.is.unsigned.signatures.missing.or.not.parsable.",
   135                 "jar \u672a\u7b7e\u540d\u3002\uff08\u7f3a\u5c11\u7b7e\u540d\u6216\u7b7e\u540d\u65e0\u6cd5\u89e3\u6790\uff09"},
   137                 "jar \u672A\u7B7E\u540D\u3002(\u7F3A\u5C11\u7B7E\u540D\u6216\u65E0\u6CD5\u5BF9\u7B7E\u540D\u8FDB\u884C\u8BED\u6CD5\u5206\u6790)"},
   136         {"jar verified.", "jar \u5df2\u9a8c\u8bc1\u3002"},
   138         {"jar.verified.", "jar \u5DF2\u9A8C\u8BC1\u3002"},
   137         {"jarsigner: ", "jarsigner\uff1a "},
   139         {"jarsigner.", "jarsigner: "},
   138         {"signature filename must consist of the following characters: A-Z, 0-9, _ or -",
   140         {"signature.filename.must.consist.of.the.following.characters.A.Z.0.9.or.",
   139                 "\u7b7e\u540d\u6587\u4ef6\u540d\u5fc5\u987b\u5305\u542b\u4ee5\u4e0b\u5b57\u7b26\uff1aA-Z\u30010-9\u3001_ \u6216 -"},
   141                 "\u7B7E\u540D\u6587\u4EF6\u540D\u5FC5\u987B\u5305\u542B\u4EE5\u4E0B\u5B57\u7B26: A-Z, 0-9, _ \u6216 -"},
   140         {"unable to open jar file: ", "\u65e0\u6cd5\u6253\u5f00 jar \u6587\u4ef6\uff1a "},
   142         {"unable.to.open.jar.file.", "\u65E0\u6CD5\u6253\u5F00 jar \u6587\u4EF6: "},
   141         {"unable to create: ", "\u65e0\u6cd5\u521b\u5efa\uff1a "},
   143         {"unable.to.create.", "\u65E0\u6CD5\u521B\u5EFA: "},
   142         {"   adding: ", "   \u6b63\u5728\u6dfb\u52a0\uff1a "},
   144         {".adding.", "   \u6B63\u5728\u6DFB\u52A0: "},
   143         {" updating: ", " \u6b63\u5728\u66f4\u65b0\uff1a "},
   145         {".updating.", " \u6B63\u5728\u66F4\u65B0: "},
   144         {"  signing: ", "  \u6b63\u5728\u7b7e\u540d\uff1a "},
   146         {".signing.", "  \u6B63\u5728\u7B7E\u540D: "},
   145         {"attempt to rename signedJarFile to jarFile failed",
   147         {"attempt.to.rename.signedJarFile.to.jarFile.failed",
   146                 "\u5c1d\u8bd5\u5c06 {0} \u91cd\u547d\u540d\u4e3a {1} \u5931\u8d25"},
   148                 "\u5C1D\u8BD5\u5C06{0}\u91CD\u547D\u540D\u4E3A{1}\u65F6\u5931\u8D25"},
   147         {"attempt to rename jarFile to origJar failed",
   149         {"attempt.to.rename.jarFile.to.origJar.failed",
   148                 "\u5c1d\u8bd5\u5c06 {0} \u91cd\u547d\u540d\u4e3a {1} \u5931\u8d25"},
   150                 "\u5C1D\u8BD5\u5C06{0}\u91CD\u547D\u540D\u4E3A{1}\u65F6\u5931\u8D25"},
   149         {"unable to sign jar: ", "\u65e0\u6cd5\u5bf9 jar \u8fdb\u884c\u7b7e\u540d\uff1a "},
   151         {"unable.to.sign.jar.", "\u65E0\u6CD5\u5BF9 jar \u8FDB\u884C\u7B7E\u540D: "},
   150         {"Enter Passphrase for keystore: ", "\u8f93\u5165\u5bc6\u94a5\u5e93\u7684\u53e3\u4ee4\u77ed\u8bed\uff1a "},
   152         {"Enter.Passphrase.for.keystore.", "\u8F93\u5165\u5BC6\u94A5\u5E93\u7684\u5BC6\u7801\u77ED\u8BED: "},
   151         {"keystore load: ", "\u5bc6\u94a5\u5e93\u88c5\u5165\uff1a "},
   153         {"keystore.load.", "\u5BC6\u94A5\u5E93\u52A0\u8F7D: "},
   152         {"certificate exception: ", "\u8bc1\u4e66\u5f02\u5e38\uff1a "},
   154         {"certificate.exception.", "\u8BC1\u4E66\u5F02\u5E38\u9519\u8BEF: "},
   153         {"unable to instantiate keystore class: ",
   155         {"unable.to.instantiate.keystore.class.",
   154                 "\u65e0\u6cd5\u5b9e\u4f8b\u5316\u5bc6\u94a5\u5e93\u7c7b\uff1a "},
   156                 "\u65E0\u6CD5\u5B9E\u4F8B\u5316\u5BC6\u94A5\u5E93\u7C7B: "},
   155         {"Certificate chain not found for: alias.  alias must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.",
   157         {"Certificate.chain.not.found.for.alias.alias.must.reference.a.valid.KeyStore.key.entry.containing.a.private.key.and",
   156                 "\u627e\u4e0d\u5230 {0} \u7684\u8bc1\u4e66\u94fe\u3002{1} \u5fc5\u987b\u5f15\u7528\u5305\u542b\u4e13\u7528\u5bc6\u94a5\u548c\u76f8\u5e94\u7684\u516c\u5171\u5bc6\u94a5\u8bc1\u4e66\u94fe\u7684\u6709\u6548\u5bc6\u94a5\u5e93\u5bc6\u94a5\u6761\u76ee\u3002"},
   158                 "\u627E\u4E0D\u5230{0}\u7684\u8BC1\u4E66\u94FE\u3002{1}\u5FC5\u987B\u5F15\u7528\u5305\u542B\u79C1\u6709\u5BC6\u94A5\u548C\u76F8\u5E94\u7684\u516C\u5171\u5BC6\u94A5\u8BC1\u4E66\u94FE\u7684\u6709\u6548 KeyStore \u5BC6\u94A5\u6761\u76EE\u3002"},
   157         {"File specified by -certchain does not exist",
   159         {"File.specified.by.certchain.does.not.exist",
   158                 "-certchain \u6307\u5b9a\u7684\u6587\u4ef6\u4e0d\u5b58\u5728"},
   160                 "\u7531 -certchain \u6307\u5B9A\u7684\u6587\u4EF6\u4E0D\u5B58\u5728"},
   159         {"Cannot restore certchain from file specified",
   161         {"Cannot.restore.certchain.from.file.specified",
   160                 "\u65e0\u6cd5\u4ece\u6307\u5b9a\u6587\u4ef6\u6062\u590d\u8bc1\u4e66\u94fe"},
   162                 "\u65E0\u6CD5\u4ECE\u6307\u5B9A\u7684\u6587\u4EF6\u8FD8\u539F certchain"},
   161         {"Certificate chain not found in the file specified.",
   163         {"Certificate.chain.not.found.in.the.file.specified.",
   162                 "\u5728\u6307\u5b9a\u6587\u4ef6\u4e2d\u672a\u627e\u5230\u8bc1\u4e66\u94fe\u3002"},
   164                 "\u5728\u6307\u5B9A\u7684\u6587\u4EF6\u4E2D\u627E\u4E0D\u5230\u8BC1\u4E66\u94FE\u3002"},
   163         {"found non-X.509 certificate in signer's chain",
   165         {"found.non.X.509.certificate.in.signer.s.chain",
   164                 "\u5728\u7b7e\u540d\u8005\u7684\u94fe\u4e2d\u627e\u5230\u975e X.509 \u8bc1\u4e66"},
   166                 "\u5728\u7B7E\u540D\u8005\u7684\u94FE\u4E2D\u627E\u5230\u975E X.509 \u8BC1\u4E66"},
   165         {"incomplete certificate chain", "\u8bc1\u4e66\u94fe\u4e0d\u5b8c\u6574"},
   167         {"incomplete.certificate.chain", "\u8BC1\u4E66\u94FE\u4E0D\u5B8C\u6574"},
   166         {"Enter key password for alias: ", "\u8f93\u5165 {0} \u7684\u5bc6\u94a5\u53e3\u4ee4\uff1a "},
   168         {"Enter.key.password.for.alias.", "\u8F93\u5165{0}\u7684\u5BC6\u94A5\u53E3\u4EE4: "},
   167         {"unable to recover key from keystore",
   169         {"unable.to.recover.key.from.keystore",
   168                 "\u65e0\u6cd5\u4ece\u5bc6\u94a5\u5e93\u4e2d\u6062\u590d\u5bc6\u94a5"},
   170                 "\u65E0\u6CD5\u4ECE\u5BC6\u94A5\u5E93\u4E2D\u6062\u590D\u5BC6\u94A5"},
   169         {"key associated with alias not a private key",
   171         {"key.associated.with.alias.not.a.private.key",
   170                 "\u4e0e {0} \u76f8\u5173\u7684\u5bc6\u94a5\u4e0d\u662f\u4e13\u7528\u5bc6\u94a5"},
   172                 "\u4E0E{0}\u5173\u8054\u7684\u5BC6\u94A5\u4E0D\u662F\u79C1\u6709\u5BC6\u94A5"},
   171         {"you must enter key password", "\u60a8\u5fc5\u987b\u8f93\u5165\u5bc6\u94a5\u53e3\u4ee4"},
   173         {"you.must.enter.key.password", "\u5FC5\u987B\u8F93\u5165\u5BC6\u94A5\u53E3\u4EE4"},
   172         {"unable to read password: ", "\u65e0\u6cd5\u8bfb\u53d6\u53e3\u4ee4\uff1a "},
   174         {"unable.to.read.password.", "\u65E0\u6CD5\u8BFB\u53D6\u53E3\u4EE4: "},
   173         {"certificate is valid from", "\u8bc1\u4e66\u7684\u6709\u6548\u671f\u4e3a {0} \u81f3 {1}"},
   175         {"certificate.is.valid.from", "\u8BC1\u4E66\u7684\u6709\u6548\u671F\u4E3A{0}\u81F3{1}"},
   174         {"certificate expired on", "\u8bc1\u4e66\u5230\u671f\u65e5\u671f\u4e3a {0}"},
   176         {"certificate.expired.on", "\u8BC1\u4E66\u5230\u671F\u65E5\u671F\u4E3A {0}"},
   175         {"certificate is not valid until",
   177         {"certificate.is.not.valid.until",
   176                 "\u76f4\u5230 {0}\uff0c\u8bc1\u4e66\u624d\u6709\u6548"},
   178                 "\u76F4\u5230{0}, \u8BC1\u4E66\u624D\u6709\u6548"},
   177         {"certificate will expire on", "\u8bc1\u4e66\u5c06\u5728 {0} \u5230\u671f"},
   179         {"certificate.will.expire.on", "\u8BC1\u4E66\u5C06\u5728{0}\u5230\u671F"},
   178         {"[CertPath not validated: ", "[\u8bc1\u4e66\u8def\u5f84\u672a\u7ecf\u8fc7\u9a8c\u8bc1\uff1a"},
   180         {".CertPath.not.validated.", "[CertPath \u672A\u9A8C\u8BC1: "},
   179         {"requesting a signature timestamp",
   181         {"requesting.a.signature.timestamp",
   180                 "\u6b63\u5728\u8bf7\u6c42\u7b7e\u540d\u65f6\u95f4\u6233"},
   182                 "\u6B63\u5728\u8BF7\u6C42\u7B7E\u540D\u65F6\u95F4\u6233"},
   181         {"TSA location: ", "TSA \u4f4d\u7f6e\uff1a "},
   183         {"TSA.location.", "TSA \u4F4D\u7F6E: "},
   182         {"TSA certificate: ", "TSA \u8bc1\u4e66\uff1a "},
   184         {"TSA.certificate.", "TSA \u8BC1\u4E66: "},
   183         {"no response from the Timestamping Authority. ",
   185         {"no.response.from.the.Timestamping.Authority.",
   184                 "\u65f6\u95f4\u6233\u673a\u6784\u6ca1\u6709\u54cd\u5e94\u3002 "},
   186                 "\u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u6CA1\u6709\u54CD\u5E94\u3002"},
   185         {"When connecting from behind a firewall then an HTTP proxy may need to be specified. ",
   187         {"When.connecting.from.behind.a.firewall.then.an.HTTP.proxy.may.need.to.be.specified.",
   186                 "\u5982\u679c\u8981\u4ece\u9632\u706b\u5899\u540e\u9762\u8fde\u63a5\uff0c\u5219\u53ef\u80fd\u9700\u8981\u6307\u5b9a HTTP \u4ee3\u7406\u3002 "},
   188                 "\u5982\u679C\u8981\u4ECE\u9632\u706B\u5899\u540E\u9762\u8FDE\u63A5, \u5219\u53EF\u80FD\u9700\u8981\u6307\u5B9A HTTP \u4EE3\u7406\u3002 "},
   187         {"Supply the following options to jarsigner: ",
   189         {"Supply.the.following.options.to.jarsigner.",
   188                 "\u8bf7\u4e3a jarsigner \u63d0\u4f9b\u4ee5\u4e0b\u9009\u9879\uff1a "},
   190                 "\u8BF7\u4E3A jarsigner \u63D0\u4F9B\u4EE5\u4E0B\u9009\u9879: "},
   189         {"Certificate not found for: alias.  alias must reference a valid KeyStore entry containing an X.509 public key certificate for the Timestamping Authority.",
   191         {"Certificate.not.found.for.alias.alias.must.reference.a.valid.KeyStore.entry.containing.an.X.509.public.key.certificate.for.the",
   190                 "\u627e\u4e0d\u5230 {0} \u7684\u8bc1\u4e66\u3002{1} \u5fc5\u987b\u5f15\u7528\u5305\u542b\u65f6\u95f4\u6233\u673a\u6784\u7684 X.509 \u516c\u5171\u5bc6\u94a5\u8bc1\u4e66\u7684\u6709\u6548\u5bc6\u94a5\u5e93\u6761\u76ee\u3002"},
   192                 "\u627E\u4E0D\u5230{0}\u7684\u8BC1\u4E66\u3002{1}\u5FC5\u987B\u5F15\u7528\u5305\u542B\u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u7684 X.509 \u516C\u5171\u5BC6\u94A5\u8BC1\u4E66\u7684\u6709\u6548 KeyStore \u6761\u76EE\u3002"},
   191         {"using an alternative signing mechanism",
   193         {"using.an.alternative.signing.mechanism",
   192                 "\u6b63\u5728\u4f7f\u7528\u66ff\u4ee3\u7684\u7b7e\u540d\u673a\u5236"},
   194                 "\u6B63\u5728\u4F7F\u7528\u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236"},
   193         {"entry was signed on", "\u6761\u76ee\u7684\u7b7e\u540d\u65e5\u671f\u4e3a {0}"},
   195         {"entry.was.signed.on", "\u6761\u76EE\u7684\u7B7E\u540D\u65E5\u671F\u4E3A {0}"},
   194         {"Warning: ", "\u8b66\u544a\uff1a "},
   196         {"with.a.CRL.including.d.entries", "\u5177\u6709\u5305\u542B %d \u4E2A\u6761\u76EE\u7684 CRL"},
   195         {"This jar contains unsigned entries which have not been integrity-checked. ",
   197         {"Warning.", "\u8B66\u544A: "},
   196                 "\u6b64 jar \u5305\u542b\u5c1a\u672a\u8fdb\u884c\u5b8c\u6574\u6027\u68c0\u67e5\u7684\u672a\u7b7e\u540d\u6761\u76ee\u3002 "},
   198         {"This.jar.contains.unsigned.entries.which.have.not.been.integrity.checked.",
   197         {"This jar contains entries whose signer certificate has expired. ",
   199                 "\u6B64 jar \u5305\u542B\u5C1A\u672A\u8FDB\u884C\u5B8C\u6574\u6027\u68C0\u67E5\u7684\u672A\u7B7E\u540D\u6761\u76EE\u3002 "},
   198                 "\u6b64 jar \u5305\u542b\u7b7e\u540d\u8005\u8bc1\u4e66\u5df2\u8fc7\u671f\u7684\u6761\u76ee\u3002 "},
   200         {"This.jar.contains.entries.whose.signer.certificate.has.expired.",
   199         {"This jar contains entries whose signer certificate will expire within six months. ",
   201                 "\u6B64 jar \u5305\u542B\u7B7E\u540D\u8005\u8BC1\u4E66\u5DF2\u8FC7\u671F\u7684\u6761\u76EE\u3002 "},
   200                 "\u6b64 jar \u5305\u542b\u7b7e\u540d\u8005\u8bc1\u4e66\u5c06\u5728\u516d\u4e2a\u6708\u5185\u8fc7\u671f\u7684\u6761\u76ee\u3002 "},
   202         {"This.jar.contains.entries.whose.signer.certificate.will.expire.within.six.months.",
   201         {"This jar contains entries whose signer certificate is not yet valid. ",
   203                 "\u6B64 jar \u5305\u542B\u7B7E\u540D\u8005\u8BC1\u4E66\u5C06\u5728\u516D\u4E2A\u6708\u5185\u8FC7\u671F\u7684\u6761\u76EE\u3002 "},
   202                 "\u6b64 jar \u5305\u542b\u7b7e\u540d\u8005\u8bc1\u4e66\u4ecd\u65e0\u6548\u7684\u6761\u76ee\u3002 "},
   204         {"This.jar.contains.entries.whose.signer.certificate.is.not.yet.valid.",
   203         {"Re-run with the -verbose option for more details.",
   205                 "\u6B64 jar \u5305\u542B\u7B7E\u540D\u8005\u8BC1\u4E66\u4ECD\u65E0\u6548\u7684\u6761\u76EE\u3002 "},
   204                 "\u8981\u4e86\u89e3\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u4f7f\u7528 -verbose \u9009\u9879\u91cd\u65b0\u8fd0\u884c\u3002"},
   206         {"Re.run.with.the.verbose.option.for.more.details.",
   205         {"Re-run with the -verbose and -certs options for more details.",
   207                 "\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u4F7F\u7528 -verbose \u9009\u9879\u91CD\u65B0\u8FD0\u884C\u3002"},
   206                 "\u8981\u4e86\u89e3\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u4f7f\u7528 -verbose \u548c -certs \u9009\u9879\u91cd\u65b0\u8fd0\u884c\u3002"},
   208         {"Re.run.with.the.verbose.and.certs.options.for.more.details.",
   207         {"The signer certificate has expired.",
   209                 "\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u4F7F\u7528 -verbose \u548C -certs \u9009\u9879\u91CD\u65B0\u8FD0\u884C\u3002"},
   208                 "\u7b7e\u540d\u8005\u8bc1\u4e66\u5df2\u8fc7\u671f\u3002"},
   210         {"The.signer.certificate.has.expired.",
   209         {"The signer certificate will expire within six months.",
   211                 "\u7B7E\u540D\u8005\u8BC1\u4E66\u5DF2\u8FC7\u671F\u3002"},
   210                 "\u7b7e\u540d\u8005\u8bc1\u4e66\u5c06\u5728\u516d\u4e2a\u6708\u5185\u8fc7\u671f\u3002"},
   212         {"The.signer.certificate.will.expire.within.six.months.",
   211         {"The signer certificate is not yet valid.",
   213                 "\u7B7E\u540D\u8005\u8BC1\u4E66\u5C06\u5728\u516D\u4E2A\u6708\u5185\u8FC7\u671F\u3002"},
   212                 "\u7b7e\u540d\u8005\u8bc1\u4e66\u4ecd\u65e0\u6548\u3002"},
   214         {"The.signer.certificate.is.not.yet.valid.",
   213         {"The signer certificate's KeyUsage extension doesn't allow code signing.",
   215                 "\u7B7E\u540D\u8005\u8BC1\u4E66\u4ECD\u65E0\u6548\u3002"},
   214                  "\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 KeyUsage \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u3002"},
   216         {"The.signer.certificate.s.KeyUsage.extension.doesn.t.allow.code.signing.",
   215         {"The signer certificate's ExtendedKeyUsage extension doesn't allow code signing.",
   217                  "\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 KeyUsage \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u3002"},
   216                  "\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 ExtendedKeyUsage \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u3002"},
   218         {"The.signer.certificate.s.ExtendedKeyUsage.extension.doesn.t.allow.code.signing.",
   217         {"The signer certificate's NetscapeCertType extension doesn't allow code signing.",
   219                  "\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 ExtendedKeyUsage \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u3002"},
   218                  "\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 NetscapeCertType \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u3002"},
   220         {"The.signer.certificate.s.NetscapeCertType.extension.doesn.t.allow.code.signing.",
   219         {"This jar contains entries whose signer certificate's KeyUsage extension doesn't allow code signing.",
   221                  "\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 NetscapeCertType \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u3002"},
   220                  "\u6b64 jar \u5305\u542b\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 KeyUsage \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u7684\u6761\u76ee\u3002"},
   222         {"This.jar.contains.entries.whose.signer.certificate.s.KeyUsage.extension.doesn.t.allow.code.signing.",
   221         {"This jar contains entries whose signer certificate's ExtendedKeyUsage extension doesn't allow code signing.",
   223                  "\u6B64 jar \u5305\u542B\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 KeyUsage \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u7684\u6761\u76EE\u3002"},
   222                  "\u6b64 jar \u5305\u542b\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 ExtendedKeyUsage \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u7684\u6761\u76ee\u3002"},
   224         {"This.jar.contains.entries.whose.signer.certificate.s.ExtendedKeyUsage.extension.doesn.t.allow.code.signing.",
   223         {"This jar contains entries whose signer certificate's NetscapeCertType extension doesn't allow code signing.",
   225                  "\u6B64 jar \u5305\u542B\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 ExtendedKeyUsage \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u7684\u6761\u76EE\u3002"},
   224                  "\u6b64 jar \u5305\u542b\u7531\u4e8e\u7b7e\u540d\u8005\u8bc1\u4e66\u7684 NetscapeCertType \u6269\u5c55\u800c\u65e0\u6cd5\u8fdb\u884c\u4ee3\u7801\u7b7e\u540d\u7684\u6761\u76ee\u3002"},
   226         {"This.jar.contains.entries.whose.signer.certificate.s.NetscapeCertType.extension.doesn.t.allow.code.signing.",
   225         {"[{0} extension does not support code signing]",
   227                  "\u6B64 jar \u5305\u542B\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 NetscapeCertType \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u7684\u6761\u76EE\u3002"},
   226                  "[{0} \u6269\u5c55\u4e0d\u652f\u6301\u4ee3\u7801\u7b7e\u540d]"},
   228         {".{0}.extension.does.not.support.code.signing.",
   227         {"The signer's certificate chain is not validated.",
   229                  "[{0} \u6269\u5C55\u4E0D\u652F\u6301\u4EE3\u7801\u7B7E\u540D]"},
   228                 "\u7b7e\u540d\u8005\u7684\u8bc1\u4e66\u94fe\u672a\u7ecf\u8fc7\u9a8c\u8bc1\u3002"},
   230         {"The.signer.s.certificate.chain.is.not.validated.",
   229         {"This jar contains entries whose certificate chain is not validated.",
   231                 "\u7B7E\u540D\u8005\u7684\u8BC1\u4E66\u94FE\u672A\u9A8C\u8BC1\u3002"},
   230                  "\u6b64 jar \u5305\u542b\u8bc1\u4e66\u94fe\u672a\u7ecf\u8fc7\u9a8c\u8bc1\u7684\u6761\u76ee\u3002"},
   232         {"This.jar.contains.entries.whose.certificate.chain.is.not.validated.",
       
   233                  "\u6B64 jar \u5305\u542B\u8BC1\u4E66\u94FE\u672A\u9A8C\u8BC1\u7684\u6761\u76EE\u3002"},
   231     };
   234     };
   232 
   235 
   233     /**
   236     /**
   234      * Returns the contents of this <code>ResourceBundle</code>.
   237      * Returns the contents of this <code>ResourceBundle</code>.
   235      *
   238      *