已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题吗?**通过editing this post添加详细信息并阐明问题。
8小时前关门。
这篇文章是编辑和提交审查7小时前。
Improve this question
我有一个java代码成功执行,但JVM不退出,即使添加了system.exit(0);
class GetSignatureNew {
public static void main (String args[])
{
String pwd = "*******";
char[] pin = new char[pwd.length()];
try
{
for (int i = 0; i < pwd.length(); i++) {
pin[i] = pwd.charAt(i);
}
// Get Certificate and private key from token
KeyStore ks = KeyStore.getInstance("PKCS11");
ks.load(null, pin);
Enumeration enu = ks.aliases();
String alias = String.valueOf(enu.nextElement());
X509Certificate cert = (X509Certificate) ks.getCertificate(alias);
PrivateKey pk = (PrivateKey) ks.getKey(alias, pin);
byte [] output = cert.getEncoded();
String b64 = Base64.getEncoder().encodeToString(output);
System.out.println(b64);
System.exit(0);
}
catch (Exception e) {
e.printStackTrace();
System.out.println("Error");
}
}
}
代码应在执行后终止
1条答案
按热度按时间w6lpcovy1#
由于您是动态地(而不是静态地)添加提供程序,因此请尝试添加Security.removeProvider()。
以下是完整的文档:
https://docs.oracle.com/javase/8/docs/technotes/guides/security/p11guide.html