在安装Glassfish 5时出错。我有jdk-10.0.2,现在我想知道是否是因为它们之间没有兼容性。
我正在运行“ asadmin起始域”,然后收到此错误:
Exception in thread "main" java.lang.NullPointerException
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.ini
tializeServiceLocator(AbstractModulesRegistryImpl.java:152)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.new
ServiceLocator(AbstractModulesRegistryImpl.java:144)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.cre
ateServiceLocator(AbstractModulesRegistryImpl.java:218)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.cre
ateServiceLocator(AbstractModulesRegistryImpl.java:224)
at com.sun.enterprise.module.single.StaticModulesRegistry.createServiceL
ocator(StaticModulesRegistry.java:88)
at com.sun.enterprise.admin.cli.CLIContainer.getServiceLocator(CLIContai
ner.java:217)
at com.sun.enterprise.admin.cli.CLIContainer.getLocalCommand(CLIContaine
r.java:255)
at com.sun.enterprise.admin.cli.CLICommand.getCommand(CLICommand.java:23
1)
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)
Thanks for you guide in anticipation
答案 0 :(得分:3)
目前,GlassFish 5与JDK 9或10不兼容。如https://blogs.oracle.com/theaquarium/java-ee-8-is-final-and-glassfish-50-is-released末尾所述,JDK 9的支持将随下一个更新一起提供。
答案 1 :(得分:2)
玻璃鱼已移至Eclipse:https://projects.eclipse.org/projects/ee4j.glassfish
Oracle“出售” javaEE也是Eclipse。
但是它仍然不支持JDK 9 +
答案 2 :(得分:1)
GlassFish 6 expected to be released in June 2020附带了对Java 11的支持。但这是仅支持JakartaEE的发行版,正如在指向Eclipse GlassFish官方网站的上一个链接中明确指出的那样。
GlassFish 6.0将按照Jakarta EE 9的要求将Jakarta api移入jakarta命名空间。这对于所有应用程序来说都是一个重大变化。 GlassFish 6.0.0将支持JDK 11+。对GlassFish 6.0.0的目标不是对JDK 8的支持。 [1]
home page没有显示任何计划来支持JDK 11来运行JavaEE 8应用程序。如果要这样做,请考虑迁移到Payara Server。它源自GlassFish和Payara 5.194 enables that。
答案 3 :(得分:0)
我与 glassfish 5.1 合作,Glassfish已移至Eclipse, https://projects.eclipse.org/projects/ee4j.glassfish/downloads 通知:您必须安装jdk8
接下来,您必须终止/usr/lib/systemd/system/glassfish.service,
vi /usr/lib/systemd/system/glassfish.service
cat /usr/lib/systemd/system/glassfish.service
[Unit]
Description = GlassFish Server v5.0
After = syslog.target network.target
[Service]
User = glassfish
ExecStart = /usr/java/jdk1.8.0_221-amd64/bin/java -jar /opt/glassfish5/glassfish/lib/client/appserver-cli.jar start-domain
ExecStop = /usr/java/jdk1.8.0_221-amd64/bin/java -jar /opt/glassfish5/glassfish/lib/client/appserver-cli.jar stop-domain
ExecReload = /usr/java/jdk1.8.0_221-amd64/bin/java -jar /opt/glassfish5/glassfish/lib/client/appserver-cli.jar restart-domain
Type = forking
[Install]
WantedBy = multi-user.target
然后重新加载系统管理器
systemctl daemon-reload
并启动glassfish.service
systemctl start glassfish.service