原因是:
Java 7u51版安全管理器的默認權限有變化,之前允許绑定>1024的端口,現在下限更高。所以derby使用的1527端口被拒絕绑定。
相關變化的官方說明: http://go.rritw.com/www.oracle.com/technetwork/java/javase/7u51-relnotes-2085002.html
解决辦法:
需要在$JAVA_HOME/jre/lib/security文件夾下的java.policy文件中相應位置添加一行(可能需要管理員權限才能修改該文件),以允許绑定相應端口:
grant { ... permission java.net.SocketPermission "localhost:1527", "listen,resolve"; }