2

我有一个签名的小程序,可以使用 JDBC/Mysql 驱动程序访问 localhost 中的数据库。

一切正常,但用户每次都会收到一个恼人的警告对话框提示,该对话框表示应用程序包含签名和未签名的代码。

我进入 Java 控制面板,高级选项卡并选中启用跟踪、启用日志记录和显示小程序生命周期异常,然后在 Java 控制台中按 5 以显示所有日志。

然后我发现了以下错误:

class "com.mysql.jdbc.LocalizedErrorMessages" does not match trust level of 
    other classes in the same package

在我的清单文件中,我可以看到LocalizedErrorMessages.properties已签名(LocalizedErrorMessages.class清单和库中都没有)

Name: com/mysql/jdbc/LocalizedErrorMessages.properties
SHA1-Digest: R1EZP+ilj5TImxZLeilYeyh3VBc=
4

1 回答 1

3

众所周知,当包被签名两次时会发生此错误(这是它出现的主要原因)。修复它的最简单方法是去掉所有签名并重新签署代码。

..warning 对话框,表示应用程序包含签名和未签名的代码。

有关背景和修复,请参阅混合签名和未签名代码

于 2012-06-03T09:19:53.413 回答