当我启动GlassFish服务器时Nullpointer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当我启动GlassFish服务器时Nullpointer相关的知识,希望对你有一定的参考价值。

我使用Glassfish应用程序服务器,根据README文件,它只是说打开CMD,键入一些命令,但我得到了Nullpointer。我需要有人来帮助我。我在Windows上。

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)
答案

正如您在评论中提到的,问题是Java 9。

Glassfish目前仅适用于Java 7或Java 8。

Github上的相关Glassfish问题:

最后一期包含一个解决方法:

In order to work around this issue please edit the glassfish/bin/asadmin file and change the line # to following
Old
exec "$JAVA" -jar "$AS_INSTALL_LIB/client/appserver-cli.jar" "$@"
Changed
exec "$JAVA" --add-modules java.annotations.common -jar "$AS_INSTALL_LIB/client/appserver-cli.jar" "$@"

也可以看看:

另一答案

Glassfish现在不支持Java 9。

下载Java 8 JRE,然后编辑文件glassfish/bin/asadmin并更改该行

exec "$JAVA" -jar "$AS_INSTALL_LIB/client/appserver-cli.jar" "$@"

例如,用Java 8 JRE中的exec "$JAVA"路径替换java

/usr/lib/jvm/java-8-oracle/jre/bin/java -jar "$AS_INSTALL_LIB/client/appserver-cli.jar" "$@"
另一答案

您之所以如此,是因为目前不支持大于java 8的版本。见here。所有需要做的就是安装jdk 8并导出JAVA_HOME以指向jdk。

另一答案

尝试更改您的Java版本....我有同样的问题,但我改变版本,它现在工作。

但是,我尝试更改Glassfish服务器,我使用的版本,它已损坏,并使用相同的版本,但从其他地方下载和提取它的工作原理。

以上是关于当我启动GlassFish服务器时Nullpointer的主要内容,如果未能解决你的问题,请参考以下文章

GlassFish服务器安装可执行文件无法打开

需要在 Glassfish 上启动域,出现错误:“目录”中没有域

java.lang.NoClassDefFoundError: org/glassfish/jersey/internal/inject/Binder 启动 Tomcat 服务器时

glassfish - springboot - 部署应用程序时出错

Glassfish 4.1.2 JVM无法启动退出代码127

GlassFish 服务器无法在 NetBeans IDE 8.0 中启动