Glassfish 服务器未启动。空点异常

Glassfish server does not start. NullPointeException

我刚刚下载了 GlassFish 5.0 存档 - 完整平台,解压缩了它,我通过命令行 运行 它。

asadmin start-domain

问题:

Exception in thread "main" java.lang.NullPointerException
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.initializeServiceLocator(AbstractModulesRegistryImpl.java:152)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.newServiceLocator(AbstractModulesRegistryImpl.java:144)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:218)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:224)
at com.sun.enterprise.module.single.StaticModulesRegistry.createServiceLocator(StaticModulesRegistry.java:88)
at com.sun.enterprise.admin.cli.CLIContainer.getServiceLocator(CLIContainer.java:217)
at com.sun.enterprise.admin.cli.CLIContainer.getLocalCommand(CLIContainer.java:255)
at com.sun.enterprise.admin.cli.CLICommand.getCommand(CLICommand.java:231)
at com.sun.enterprise.admin.cli.AdminMain.executeCommand(AdminMain.java:371)
at com.sun.enterprise.admin.cli.AdminMain.doMain(AdminMain.java:306)
at org.glassfish.admin.cli.AsadminMain.main(AsadminMain.java:57)

我尝试在文件中设置路径 asenv.bat -> set path = C:/.../Java/bin - 没有帮助。尝试启动:asadmin start-domain domain1 - 没有帮助。

已安装:jdk-9.0.1 8号也试过了,没用。怎么办???

这似乎是这个问题 - https://github.com/eclipse-ee4j/glassfish/issues/22130

GlassFish 5 不适用于 JDK9,但 GlassFish 6 适用于 JDK11。

好的,Glassfish 5.1 暂时不存在。使用此解决方案继续使用 Glassfish 5.0:

只需在位于此处的 asenv.bat 文件中设置 AS_JAVA 变量:C:\DEVENV\glassfish5\glassfish\config.

要编辑的文件:添加最后一行

重新启动您的服务器....享受:

对我来说,@Vifier Lockla 所做的并不奏效。我必须更改 linux 机器中的 path/glassfish5/glassfish/config/asenv.conf 文件。在文件底部 jdk 1.8 的路径,即

AS_JAVA="/usr/lib/jvm/jdk1.8.0_191"

编辑asenv.bat设置AS_JAVA=/usr/lib/jvm/java-8-oracle 和 asenv.conf AS_JAVA="/usr/lib/jvm/java-8-oracle"

有效

GlassFish 5.1 也不能与 Java 9 或更高版本一起使用。

glassfish 5.1 还需要 java 8 和 AS_JAVA hack in asenv.conf/bat 文件。

当您从 Internet 下载 glassfish zip 文件并解压缩时。 阅读自述文件是一个好习惯。 在我的例子中,在自述文件的“先决条件”标题下,它指定:GlassFish 5.0 需要 Oracle JDK 8 Update 144。 我按要求下载并安装了 JDK 8 update 144。它立即起作用。我最初有 JDK 14.0.2,它显示@Aleksandr 发布的错误。

我犯了与 OP 相同的错误,因为发行说明在标题 必需 JDK 发行说明中的​​版本

但是你可以做的是下拉每个版本以查看 glassfish 5 将兼容的最新 jdk 版本或者只需从 [=10 下载 Java SE Development Kit 8 =].

您还必须在 asenv.bat 中添加 java 变量,正如 Vifier Lockla 友善评论的那样。感谢 Vifier 的建议。

我换到了glassfish所在的目录

cd /opt

然后

sudo glassfish5/bin/asadmin start-domain

我确定这有效