Viv*_*wan 5 spring-mvc grizzly pom.xml maven-3 glassfish-4.1
启动 GlassFish 4.1.1 服务器(Grizzly Framework 2.3.23)时,显示以下警告消息:实例无法初始化。类=接口 org.glassfish.grizzly.http.server.AddOn
Grizzly Framework 2.3.23需要单独安装在计算机上吗?(根据详细信息:“Class=interface org.glassfish.grizzly.http.server.AddOn”,看起来 grizzly http 服务器是 glassfish 的一部分)如果不需要单独安装 grizzly http 服务器,那么它正在尝试安装哪个实例被初始化并失败。
Spring Tool Suite IDE 中是否要添加 GlassFish Plugin for Eclipse?
GlassFish 4 服务器使用命令提示符停止和启动测试:
glassfish4\bin>asadmin stop-domain
Run Code Online (Sandbox Code Playgroud)
命令 stop-domain 已成功执行。
glassfish4\bin>asadmin start-domain
Run Code Online (Sandbox Code Playgroud)
等待domain1启动;
成功启动域:domain1;
域位置:glassfish4\glassfish\domains\domain1;
日志文件:glassfish4\glassfish\domains\domain1\logs\server.log;
管理端口:4848;
命令 start-domain 已成功执行。
如上所述,警告仍然存在。
如果 Grizzly 框架内置在 GlassFish 4 中,那么项目 pom.xml 中是否需要明确包含 Grizzly 依赖项,如下所示?(代码来自:Grizzly)
<dependencies>
<dependency>
<groupId>org.glassfish.grizzly</groupId>
<artifactId>grizzly-http-server</artifactId>
<version>2.3.22</version>
</dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)
我也遇到了同样的问题,Glassfish 嵌入了 4.1.2。请注意,您只写了错误消息的一部分,完整的错误消息是:
Instance could not be initialized. Class=interface org.glassfish.grizzly.http.server.AddOn, name=http-listener-1, realClassName=org.glassfish.grizzly.http2.Http2AddOn
Run Code Online (Sandbox Code Playgroud)
因此,Glassfish 正在尝试实例化包 http2 中的一个类,但是该包不包含在嵌入式 Glassfish 中!glassfish-embedded-all-4.1.2.jar 中没有这样的文件夹。
不知道5.0有没有修复这个问题
我对 4.1.2 的解决方案是添加包含此包的依赖项(嗯,这正是您提出的解决方案):
<dependency>
<groupId>org.glassfish.grizzly</groupId>
<artifactId>grizzly-http2</artifactId>
<version>2.3.28</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish.grizzly</groupId>
<artifactId>grizzly-npn-bootstrap</artifactId>
<version>1.7</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4474 次 |
| 最近记录: |