我试图在没有JDK的Linux机器中以Java代码的形式运行 JarSigner 。仅JRE可用。
我尝试将 jarsigner 从JDK安装的bin文件夹复制到JRE的bin文件夹,也将tool.jar
从JDK的lib复制到JRE的lib文件夹。但这没用。
收到的错误消息:
java.lang.NoSuchMethodError:sun.security.tools.KeyStoreUtil.isSelfSigned(Ljava / security / cert / X509Certificate;)
Process process = Runtime.getRuntime().exec("jarsigner -keystore "
+ tempFile.getAbsolutePath()
+ " -storepass stack -keypass overflow -signedjar "
+ newbtrpFile2.getName() + " "
+ newbtrpFile1.getName() + " bogus-cert" );
答案 0 :(得分:0)
没有JDK,就无法拥有JarSigner。 如果您尝试独立使用JarSigner,则会显示以下错误跟踪:
Error: could not find libjava.dylib
Error: Could not find Java SE Runtime Environment.
这与JarSigner的工作方式以及如何将其自身集成到Java运行时环境中有关。