Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何加速jar签名?_Java_Performance_Ant_Jar_Signer - Fatal编程技术网

Java 如何加速jar签名?

Java 如何加速jar签名?,java,performance,ant,jar,signer,Java,Performance,Ant,Jar,Signer,我使用ant为web start部署的JAR签名。 当web开始签名时,Ant.signjar非常慢。 如何加快签名过程?我找到了一个可能的解决方案 在前面的构建脚本ant.signjar中,对所有jar按顺序调用(我们使用gradle进行构建,依赖项超过20MB)。现在我使用groovy库GPAR方法:withPool(4)和eachParallel{ant.signjar}。这是很酷的2个核心在我的电脑和4个核心在构建服务器。(快3倍) 第二个技巧是缓存:我们对所有发布/非快照依赖项使用缓存

我使用ant为web start部署的JAR签名。 当web开始签名时,Ant.signjar非常慢。
如何加快签名过程?

我找到了一个可能的解决方案

在前面的构建脚本ant.signjar中,对所有jar按顺序调用(我们使用gradle进行构建,依赖项超过20MB)。现在我使用groovy库GPAR方法:withPool(4)和eachParallel{ant.signjar}。这是很酷的2个核心在我的电脑和4个核心在构建服务器。(快3倍)


第二个技巧是缓存:我们对所有发布/非快照依赖项使用缓存的签名JAR。当我们在不使用clean的情况下运行build时,它运行得更快,因为它使用来自build目录的缓存签名lib。

我通常使用两个目标:一个用于对整个项目进行签名,另一个用于仅对我的jar进行签名。因此,后者不会重新签名依赖项,从而使签名过程更快。

您签名了多少个JAR?+1,我面临同样的问题。如果
Ant
可以检查目标是否存在并且它是否已签名,那么最好再次跳过签名。我相信Ant会在签名之前检查目标是否已使用正确的密钥签名。这就是我从Gradle内部使用ant.signjar的经验。(我并没有使用Gradle的增量构建和输入输出,而是ant.signjar跳过了签名)。这正是我想要做的,您是如何缓存第三方签名的JAR的?我使用的是nexus repo,但我想在这个repo中签署JAR,而不必担心在升级依赖项版本时手动执行任何操作。