Glassfish 启动域失败

Glassfish start-domain failed

我不确切知道问题所在,但在 windows 10 顺便说一句,重新启动我的机器后,glassfish 将不再启动。 我的日志

Use "exit" to exit and "help" for online help.
asadmin> start-domain
Waiting for domain1 to start ..Error starting domain domain1.
The server exited prematurely with exit code 1.
Before it died, it produced the following output:

Listening for transport dt_socket at address: 9009
Error: Password file read access must be restricted: C:\dev\java\jdk1.7.0_51\jre\lib\management\jmxremote.password

Command start-domain failed.

版本 = GlassFish Server 开源版 3.1.2.2(内部版本 5) java 版本“1.7.0_51” Java(TM) SE 运行时环境(build 1.7.0_51-b13) Java HotSpot(TM) 64 位服务器 VM(内部版本 24.51-b03,混合模式)

好吧,我找到了解决方案

打开命令提示符 window。 运行 下面的命令 C:\MyPasswordFile>cacls jmxremote.password 此命令显示 jmxremote.password 文件的访问控制列表 (ACL)。

设置访问权限,以便只有您的用户名具有读取权限。 当机器上没有配置用户时,默认用户名通常是 Owner,或者 Owner 的本地化翻译。

C:\MyPasswordFile>cacls jmxremote.password /P Owner:R 此命令向具有只读权限的用户 Owner 授予访问权限,其中 Owner 是 jmxremote.password 文件的所有者。

再次显示ACL。 C:\MyPasswordFile>cacls jmxremote.password 这一次,您会看到只有所有者可以访问密码文件。

这里描述的就是这些https://docs.oracle.com/javase/6/docs/technotes/guides/management/security-windows.html

诀窍是更改用户的权限(在 windows 环境 cacls 上),魔术就完成了。