我正在尝试使用Buildroot上的openjdk-12-jre通过jar上的HTTPS下载文件。我希望不必修改jar。罐子启动但死于错误:
Caused by: java.lang.SecurityException: Can not initialize cryptographic mechanism
at java.base/javax.crypto.JceSecurity.<clinit>(JceSecurity.java:118)
... 21 more
Caused by: java.lang.SecurityException: Can't read cryptographic policy directory: unlimited
at java.base/javax.crypto.JceSecurity.setupJurisdictionPolicies(JceSecurity.java:324)
at java.base/javax.crypto.JceSecurity.access$000(JceSecurity.java:73)
at java.base/javax.crypto.JceSecurity$1.run(JceSecurity.java:109)
at java.base/javax.crypto.JceSecurity$1.run(JceSecurity.java:106)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/javax.crypto.JceSecurity.<clinit>(JceSecurity.java:105)
... 21 more
在执行Google搜索之后,该错误似乎是由于缺少$JAVA_HOME/jre/lib/security/
下的目录所致。
在Debian问题追踪器上有一个变通方法,涉及创建符号链接-但它已过时。此外,由于Buildroot的安装量很小,因此我缺少了大量必要的文件。
我还尝试过从计算机上窃取证书存储,但是没有改变-可能是由于体系结构上的差异?
如何获取Buildroot为OpenJDK生成证书?