我已经在ubuntu中安装了glassfish 5,并将其放在/opt
目录下,但是当我输入asadmin start-domain
时,我遇到了这个错误:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "org.glassfish.hk2.api.DynamicConfigurationService.createDynamicConfiguration()" because "dcs" is null
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)
我该如何解决这个问题?
3条答案
按热度按时间osh3o9ms1#
Glassfish版本5显示了在使用openjdk 15(至少在我的机器上)运行时的行为,我已经将其配置(见下文)为使用JDK-8运行,并且它可以正确启动。
在Windows中,或
在unix/linux中。将其添加到用于启动Glassfish的脚本中,这样环境就可以将Glassfish引导到适当的位置来查找java二进制文件。
kuhbmx9i2#
你得把
设置AS_JAVA=C:\Program Files\Java\jdk1.5.0_16
在你的glassfish服务器的这个目录下:
C:\Users\Usuario\Documents\glassfish-5.0.1\glassfish5\glassfish\config\asenv
vybvopom3#
我在GlassFish 6上遇到了同样的问题。确保您安装了JDK。
另外,glassfish文档说你必须设置JAVA_HOME环境变量,然后PATH变量指向JAVA_HOME/bin。
在Linux上,我编辑了我的
~/.bash_profile
: