2

我正在尝试签署我的 java 小程序。我运行以下几行来创建证书:

keytool -genkey -keystore myKeyStore -alias ben
keytool -selfcert -keystore myKeyStore -alias ben

到这里一切正常。它需要密码和一些详细信息并创建 MyKeyStore 文件。

然后我运行这一行:

jarsigner -keystore myKeyStore nnis.jar ben

但它所做的只是告诉我:

Error: Could not find or load main class sun.security.tools.JarSigner

文件 tools.jar(其中存在 JarSigner.class)位于“PATH”中,为了确定,我还将它复制到运行 jarsigner 命令的本地目录中。

我究竟做错了什么?

我将不胜感激任何建议 - 解决问题或绕过它。

4

1 回答 1

6

Jarsigner.exe 相对于它自己的位置搜索 tools.jar。在 JDK 中,它们位于:

<jdk-install-folder>\bin\jarsigner.exe
<jdk-install-folder>\lib\tools.jar

只要您保持相同的相对文件夹结构,它就应该找到 JarSigner 类。例如,如果您的 jarsigner.exe 在C:\Temp\YourFolder\jarsigner.exe中,您应该将 tools.jar 放在C:\Temp\lib\tools.jar中。

于 2013-12-04T01:26:21.580 回答