当我运行我的德比网络服务器时,我收到此错误

时间:2015-08-25 23:57:40

标签: derby

网络服务器启动期间抛出异常。 org.apache.derby.impl.drda.NetworkServerControlImpl。(java.lang.String,java.lang.String) java.security.PrivilegedActionException:java.lang.NoSuchMethodException:org.apache.derby.impl.drda.NetworkServerControlImpl。(java.lang.String,java.lang.String)     at java.security.AccessController.doPrivileged(Native Method)     在org.apache.derby.iapi.jdbc.DRDAServerStarter.boot(未知来源)     at org.apache.derby.impl.drda.NetworkServerControlImpl.start(未知来源)     在org.apache.derby.drda.NetworkServerControl.start(未知来源)     在NewClass1.run(NewClass1.java:35) 引起:java.lang.NoSuchMethodException:org.apache.derby.impl.drda.NetworkServerControlImpl。(java.lang.String,java.lang.String)     at java.lang.Class.getConstructor0(Unknown Source)     在java.lang.Class.getConstructor(未知来源)     在org.apache.derby.iapi.jdbc.DRDAServerStarter $ 1.run(未知来源)     ......还有5个

1 个答案:

答案 0 :(得分:0)

你的问题听起来很像DERBY-3535,这是一个被打开但被关闭的工作,因为没有人可以复制它,因此从未诊断出根本原因。

当时的怀疑是该错误是由以下因素组合而成的:

  1. CLASSPATH上的多个不同版本的Derby jar文件
  2. 适当的Java安全策略
  3. 请注意,您可以在系统上轻松获得多个版本的Derby,其中一些版本可能已经安装而没有您意识到(例如,作为安装JDK的一部分,其中捆绑了Derby,或者作为其一部分)某些应用程序服务器或其他捆绑了Derby的软件。)

    如果你能弄清楚如何在干净的系统上重现这个问题,那么Derby社区很乐意听到并修复它。否则,我建议您仔细查看您的CLASSPATH并查看可能存在哪些Derby副本,并仔细查看您的Java安全策略并查看它是否有任何棘手的部分。

    在短期内,如果DERBY-3535确实是您的问题,您可以通过从您的环境中删除derby.drda.startNetworkServer=true配置来解决它。