我已经以各种方式签署了我的jar,但是当我使用该命令时,我不断收到上述错误消息:
jarsigner -verify -verbose [my jar]
有没有办法摆脱这个错误?如果没有重新认证,我的代码会在六个月后停止工作吗?
以下是用于生成密钥和密钥的整套命令。签下Jar:
keytool -genkey -keystore [keystore] -alias [alias] -validity 2000
keytool -selfcert -keystore [keystore] -alias [alias] -validity 2000
jarsigner -keystore [keystore] [jar] [alias]
答案 0 :(得分:13)
有没有办法摆脱这个错误?
这不是错误,而是警告。至于如何避免它,请确保证书的有效期超过6个月。对于自签名证书,这是在生成密钥时提供正确参数的问题。这是keytool
Example。
keytool -genkeypair -dname "cn=Mark Jones, ou=Java, o=Oracle, c=US"
-alias business -keypass <new password for private key> -keystore /working/mykeystore
-storepass <new password for keystore> -validity 180
重要的部分是-validity 180
。这个例子是180天,或大约6个月。使用1800年约5年。
如果没有重新认证,我的代码会在六个月后停止工作吗?
不完全是。
我认为我已经关闭了所有的java缓存,因为它在尝试开发时很烦人。
测试期间的Applet缓存是一个大问题。我试图避免在浏览器中测试applet,直到绝对必要。我知道有三种方法来测试不会缓存类的applet。