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