我在
中构建了一个非常简单的 hello world 项目Payara 5(5.181)
JSF 2.3
JDK 1.8
CDI 2.0
Maven
并遇到问题
在控制台中由于以下问题无法启动服务器:启动过程失败,退出代码为1
会抛出错误:
错误:无法找到或加载主类服务器\ payara5 \ glassfish.lib.grizzly-npn-bootstrap.jar
答案 0 :(得分:6)
Payara Tools for Eclipse似乎受到一些可能导致此错误的错误的困扰。就我而言,以下变通办法有所帮助:
domain.xml
配置文件(通常为 payara_install_path /glassfish/domains/domain1/config/domain1.xml),然后搜索“ Xbootclasspath”。您应该找到几行,例如
<jvm-options>[1.8.0|1.8.0u120]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.6.jar</jvm-options>
<jvm-options>[1.8.0u121|1.8.0u160]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.7.jar</jvm-options>
<jvm-options>[1.8.0u161|1.8.0u190]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.8.jar</jvm-options>
<jvm-options>[1.8.0u191|1.8.0u500]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.8.1.jar</jvm-options>
根据您安装的Java版本(尝试运行java --version
)并选择适当的行(很可能是最后一行)。删除其余的行,并删除所选行的开头的[...]部分,以便获得类似
<jvm-options>-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.8.1.jar</jvm-options>
此后,这些工具似乎可以正常启动。
答案 1 :(得分:4)
问题出在Java版本上。 grizzly-npn-bootstrap-1.8.1.jar Jar放在bootclasspath中,这就是为什么它需要正确的Java版本才能启动payara服务器的原因。因此,请从 domain.xml 中删除不必要的引导jar。
在Windows中:
1)转到--- C:\ Users \ xxxx \ payara5 \ glassfish \ domains \ domain1 \ config \ domain.xml
2)根据我的java verson( java版本“ 1.8.0_191” ),我从domain.xml中删除了以下几行。因此,请根据您的Java版本删除。
<jvm-options>[1.8.0|1.8.0u120]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.6.jar</jvm-options>
<jvm-options>[1.8.0u121|1.8.0u160]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.7.jar</jvm-options>
<jvm-options>[1.8.0u161|1.8.0u190]-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.8.jar</jvm-options>
3)从 jvm-options 中删除此 [1.8.0u191 | 1.8.0u500] 部分,并在您的domain.xml中编辑该行(wrt java -version)如下图所示
<jvm-options>-Xbootclasspath/p:${com.sun.aas.installRoot}/lib/grizzly-npn-bootstrap-1.8.1.jar</jvm-options>
4)重新启动服务器。