2

Wildfly 9在两台服务器下都Ubuntu使用。Windows有时,我需要重新启动服务器,但在我停止服务器后,我无法再次启动它。有一个红色的消息框说Server start failed。详细消息是:

WFLYCTL0158: Operation handler failed: java.lang.IllegalStateException

我无法停止Wildfly,因为 Windows 上有一个错误阻止用户通过服务停止 Wildfly 服务器。该过程停滞不前,Stopping但它永远不会停止 Wildfly 服务。我必须重新启动 Windows 才能使其再次工作。

有人遇到这个问题吗?我该如何克服呢?

4

2 回答 2

1

这是我解决“停止”问题的方法。要在不必重新启动 Windows 的情况下终止 Windows 服务,请创建一个名为 killwindowsservice.bat 或其他名称的批处理文件。将以下内容放入其中。

set SERVICE=%1
echo Killing Service %SERVICE%
FOR /F "tokens=3" %%A IN ('sc queryex %SERVICE% ^| findstr PID') DO (SET pid=%%A)
IF "!pid!" NEQ "0" (
    taskkill /f /t /pid !pid!
)

只需使用 Windows 服务的名称调用您的脚本。所以对我来说,我将我的 Windows 服务称为我的应用程序服务器实例的名称。因此,例如“Server01”。

所以对我来说,我会这样称呼它:killwindowsservice.bat Server01

该脚本将终止 Windows 服务。

Wildfly 8.x+ 附带的 Windows 服务脚本不适用于 Windows 2012/2012 R2。我没有让他们工作。我从以前版本的 JBoss 中获取了 jbosssvc.exe,并自定义了随附的 Windows 服务脚本。他们完美地工作。我现在在 12 台 Wildfly 服务器上使用这些脚本没有问题。

于 2016-04-29T20:49:07.907 回答
0

这就是我在 Windows 上管理 Wildfly 的方式:

  • 打开Task Manager
  • 选项卡下的启用Command LineDetails
  • 查找Wildfly进程(路径会告诉你正确的实例)
  • 杀死进程

然后服务器通过管理控制台启动。您也可以杀死 Wildfly 主进程并重新开始。

于 2017-01-11T12:09:49.710 回答