当我启动GlassFish服务器时Nullpointer

时间:2018-01-31 16:16:30

标签: glassfish

我使用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)

5 个答案:

答案 0 :(得分:1)

正如您在评论中提到的,问题是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" "$@"

另见:

答案 1 :(得分:0)

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" "$@"

答案 2 :(得分:0)

之所以会这样,是因为当前不支持大于Java 8的版本。参见here。所有需要做的就是安装jdk 8并导出JAVA_HOME以指向jdk。

答案 3 :(得分:0)

尝试更改您的Java版本。 我遇到了同样的问题,但是我更改了版本,如今可以使用。

但是,我尝试更改我使用的版本Glassfish服务器,该服务器已损坏,并且具有相同的版本,但从其工作的另一位置下载并提取了该版本。

答案 4 :(得分:0)

1- 检查您的 Java 版本

java -version

2- 如果不是 java 8 安装 Java 8:

sudo apt-get install openjdk-8-jdk
 

 

3-将您的 jdk 更改为 java8 :

sudo update-alternatives --config java  

4 次重新运行 glassfish:

glassfish5/bin/asadmin start-domain