是否可以使用JarSigner类在Java中对jar文件进行签名?目前,我正在使用:

String args[] = {"-keystore", keystore, "-storepass", password, jar, keyname};
JarSigner js = new JarSigner();
js.run(args);


但是如果失败,则js.run void将调用System.exit(-1),导致我的整个应用程序崩溃。我正在考虑在线程内部运行该线程,将其加入直到完成,然后检查返回代码。只要看看是否有更正式的方式即可。任何帮助将不胜感激。

最佳答案

我想您使用JDK工具中包含的Sun / Oracle JarSigner。您有两种选择:


例如,通过复制/粘贴大多数run方法来重用,以从OpenJDK source中跳过System.exit子句中的catch
使用JarSigner from GNU ClassPath project,其中start方法不会调用System.exit,但会引发异常。

10-07 18:17