启动Derby连接时出现“SecurityException:sealed violation”

我需要使用“ org.apache.derby.drda.NetworkServerControl ”类从我的java应用程序启动derby服务器。
当我尝试启动服务器时,它会抛出exception。

码:

 NetworkServerControl server = null; server=new NetworkServerControl(InetAddress.getLocalHost(),1527,"user","123") server.start(new PrintWriter(System.out)); 

错误:

 Caused by: java.lang.SecurityException: sealing violation: package org.apache.derby.impl.store.raw.xact is sealed 

谁能告诉我这个错误的原因?

您的类路径上可能有两次Derby类。 在另一个jar存档中查找Derby类并仅使用它们一次。

我遇到了同样的问题。 我正在使用One Jar包装我的应用程序。 一个Jar有它自己的类加载器,可能会导致问题。 如果您正在使用One Jar,请尝试在没有One Jar的情况下打包您的应用并validation。

我在Squirrel有这个问题。 我试图添加一个新的Derby嵌入式驱动程序,我有错误。

然后我关闭了Squirrel,从“c:\ Program Files \ squirrel-sql-3.5.0 \ lib \”中删除了derby **。jar,启动了Squirrel并成功添加了新驱动程序。

在此处输入图像描述