我正在尝试签署我的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命令的本地目录中。
我究竟做错了什么?
我将不胜感激任何建议-解决问题或绕过它。
最佳答案
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中。