【发布时间】:2013-09-05 23:08:04
【问题描述】:
我正在尝试签署我的 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 命令的本地目录。
我做错了什么?
我将不胜感激任何建议 - 解决问题或绕过它。
【问题讨论】:
-
“我做错了什么?”开头.. “我把文件tools.jar(里面有JarSigner.class)放在同一个我运行命令的目录。” 不要那样做。将 JRE 的组件留在安装它们的位置,并将该位置添加到路径中。
-
谢谢安德鲁,我也将目录添加到路径中,但没有帮助(我编辑了问题,所以它会很清楚......)
-
忘记 PATH。 JAR 文件不是在 PATH 上搜索,而是在 CLASSPATH 上搜索,或者在本例中,直接在 JDK 或 JRE 的安装目录中搜索。在您开始毫无意义地摆弄它之前,只需将整个 JDK 或 JRE 恢复原状。必要时重新安装。
标签: java keytool jarsigner jar-signing