无法从 Netbeans 7.4 启动 derby 数据库 [英] Unable to start derby database from Netbeans 7.4

查看:47
本文介绍了无法从 Netbeans 7.4 启动 derby 数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我下载了 Netbeans 7.4 和 Java 7 Update 51.当我尝试从 Netbeans 启动 Java DB 或 derby 连接时出现以下错误.这是在 Windows 8 PC 上.我在工作时下载了适用于 Windows xp 32 位的版本.它工作正常.我不确定缺少什么.

I downloaded Netbeans 7.4 and Java 7 Update 51. I get the below error when I try to start Java DB or derby connection from Netbeans. This is on a windows 8 PC. I downloaded the version for windows xp 32 bit at work. It works fine. I am not sure what is missing.

Thu Jan 16 00:48:23 EST 2014 : Security manager installed using the Basic server security policy.
Thu Jan 16 00:48:24 EST 2014 : access denied ("java.net.SocketPermission" "localhost:1527" "listen,resolve")
java.security.AccessControlException: access denied ("java.net.SocketPermission" "localhost:1527" "listen,resolve")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:372)
at java.security.AccessController.checkPermission(AccessController.java:559)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkListen(SecurityManager.java:1134)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at javax.net.DefaultServerSocketFactory.createServerSocket(ServerSocketFactory.java:231)
at org.apache.derby.impl.drda.NetworkServerControlImpl.createServerSocket(Unknown Source)
at org.apache.derby.impl.drda.NetworkServerControlImpl.access$000(Unknown Source)
at org.apache.derby.impl.drda.NetworkServerControlImpl$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(Unknown Source)
at org.apache.derby.impl.drda.NetworkServerControlImpl.executeWork(Unknown Source)

at org.apache.derby.drda.NetworkServerControl.main(Unknown Source)

推荐答案

这就是我所做的:

  1. 通过执行 NetBeans 7.4 中的这条指令,找出 java home 的确切位置:

  1. Find out exactly where the java home is by executing this instruction from NetBeans 7.4 :

System.out.println(System.getProperty("java.home"));

这是我的案例的输出:

C:Program FilesJavajdk1.7.0_51jre

这对我来说很重要,我正在修改另一个 java.policy 并且没有任何效果,浪费了我几个小时.

which is quite important for me, I was modifying another java.policy and took no effect and wasted me a couple of hours.

由于java.policy是unix风格的文件,而且是只读的,我用notepad++打开编辑,以管理员身份执行(在同一个java home下):

For reason of java.policy is an unix style file and read-only, I opened and edited it with notepad++ and executed as administrator (under the same java home):

C:Program FilesJavajdk1.7.0_51jrelibsecurityjava.policy

在第一次授权后仅将这些行添加到文件中:

Add only these lines into the file after the first grant:

grant {
    permission java.net.SocketPermission "localhost:1527", "listen";
};

  • 保存文件,由于权限原因,这有点棘手.但是,如果您以管理员身份运行 notepad++ 或任何其他编辑程序,则可以解决问题.

    然后尝试从 NetBeans 连接数据库,它对我有用.
  • 祝你好运.

    这篇关于无法从 Netbeans 7.4 启动 derby 数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆