Java 运行startNetworkServer时出错

Java 运行startNetworkServer时出错,java,api,netbeans,derby,Java,Api,Netbeans,Derby,我正在尝试从netbeans外部启动网络服务器。我确实将DERBY_INSTALL变量设置为适当的目录,然后发出setNetworkServerCP命令,该命令也可以正常工作。但是当我尝试运行startNetworkServer时,我得到了以下错误 C:\Users\tandons>D: D:>cd D:\netbeans\glassfish-v2.1\javadb\bin D:\netbeans\glassfish-v2.1\javadb\bin>setNetworkServerCP-DERB

我正在尝试从netbeans外部启动网络服务器。我确实将DERBY_INSTALL变量设置为适当的目录,然后发出setNetworkServerCP命令,该命令也可以正常工作。但是当我尝试运行startNetworkServer时,我得到了以下错误

C:\Users\tandons>D:

D:>cd D:\netbeans\glassfish-v2.1\javadb\bin

D:\netbeans\glassfish-v2.1\javadb\bin>setNetworkServerCP-DERBY\u HOME或 未设置DERBY_安装。将其中一个变量设置为 您的Derby安装。D:\netbeans\glassfish-v2.1\javadb\bin>set DERBY_INSTALL=D:\netbeans\glassfish-v2.1\javadb

D:\netbeans\glassfish-v2.1\javadb\bin>setNetworkServerCP.bat

D:\netbeans\glassfish-v2.1\javadb\bin>SET DERBY_INSTALL=D:\netbeans\GLASSF~1.1\j avadb

D:\netbeans\glassfish-v2.1\javadb\bin>set CLASSPATH=D:\netbeans\glassfish-v2.1\j avadb\lib\derbynet.jar;D:\netbeans\glassfish-v2.1\javadb\lib\derbytools.jar

D:\netbeans\glassfish-v2.1\javadb\bin>setNetworkServerCP

D:\netbeans\glassfish-v2.1\javadb\bin>SET DERBY_INSTALL=D:\netbeans\GLASSF~1.1\j avadb

D:\netbeans\glassfish-v2.1\javadb\bin>set CLASSPATH=D:\netbeans\glassfish-v2.1\j avadb\lib\derbynet.jar;D:\netbeans\glassfish-v2.1\javadb\lib\derbytools.jar;D:\n etbeans\glassfish-v2.1\javadb\lib\derbynet.jar;D:\netbeans\glassfish-v2.1\javadb \lib\derbytools.jar

D:\netbeans\glassfish-v2.1\javadb\bin>startNetworkServer安全性 使用基本服务器安全策略安装管理器。通道 拒绝(“java.net.SocketPermission”“localhost:1527”“侦听,解析”) java.security.AccessControlException:拒绝访问 (“java.net.SocketPermission”“localhost:1527”“侦听,解析”) 位于java.security.AccessControlContext.checkPermission(未知源) 位于java.security.AccessController.checkPermission(未知源) 位于java.lang.SecurityManager.checkPermission(未知源) 位于java.lang.SecurityManager.checkListen(未知源) 位于java.net.ServerSocket.bind(未知源) 位于java.net.ServerSocket。(未知源) 位于javax.net.DefaultServerSocketFactory.createServerSocket(未知源) (e) 位于org.apache.derby.impl.drda.NetworkServerControlImpl.createServerSocke t(未知来源) 位于org.apache.derby.impl.drda.NetworkServerControlImpl.access$000(未知 n来源) 位于org.apache.derby.impl.drda.NetworkServerControlImpl$1.run(未知的Sou (rce) 位于java.security.AccessController.doPrivileged(本机方法) 位于org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(Unk 未知来源) 位于org.apache.derby.impl.drda.NetworkServerControlImpl.executeWork(Unkno (来源) 位于org.apache.derby.drda.NetworkServerControl.main(未知来源)

D:\netbeans\glassfish-v2.1\javadb\bin>


还有一种更好的方法可以在java程序中实现这一点。我阅读了Apache网站上提供的官方文档(使用NetworkServerControl api),但我几乎无法从中了解任何内容………

这是一个已知的bug。下面的链接介绍了解决方法。(谷歌是你的朋友):


我不确定这是否是我的问题……我试图在嵌入式模式下从netbeans环境中连接到javaDB,它工作正常……不知何故,当netbeans设置类路径变量时,它工作正常,但在netbeans外部它不会……如果您知道,请解释一下NetworkServerControl api是如何工作的工作……我觉得使用编程方法会更好/