gpt4 book ai didi

java - 如何解决java.lang.SecurityException :?

转载 作者:行者123 更新时间:2023-12-02 12:04:21 31 4
gpt4 key购买 nike

如何解决安全异常?

客户端显示以下错误。如何解决?

java.lang.SecurityException:class "org.apache.commons.io.output.ByteArrayOutputStream"'s signer information does not match signer information of other classes in the same package

最佳答案

您的类路径中有多个包含相同类的 Jars。其中一份或多份已签署。如果 Jar 已签名,并且一个类来自一个 Jar 而另一个类来自不同的 Jar,您可能会收到此错误。如果您有不同版本的相同 Jars 或将另一个库的类添加到其自己的 Jar 中的库,这种情况大多数时候都会发生。

找到罪魁祸首并解决它,并不是一个简单的过程。到目前为止,我发现的最简单的方法是在 bash-shell 的 for 循环中使用 grepjar tf 。这显然意味着您需要 Unix 系统或 Cygwin:

for i in *.jar; do
jar tf "$i" | grep ByteArrayOutputStream | grep -c commons > /dev/null && echo "$i"
done

Powershell 可能会带来类似的功能,但我不知道 Powershell。

这个简短的脚本输出所有包含包 .commons..ByteArrayOutputStream 类的 jar。就我而言,仅输出 commons-io-1.0.jar,但您应该看到多个文件名。下一步是找出为什么这些特定的 jar 位于您的类路径中,并决定下一步,例如删除其中一个 jar 等。

关于java - 如何解决java.lang.SecurityException :?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47012403/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com