首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式停止WildFly 10

以编程方式停止WildFly 10
EN

Stack Overflow用户
提问于 2017-09-25 13:33:26
回答 2查看 1.8K关注 0票数 2

我正在从JBoss 6.1.0_final迁移到WildFly 10,在某种条件下,我想停止服务器。比如:

代码语言:javascript
复制
if (condition == true) 
   System.exit(1);

上面的代码在JBoss中运行良好,它会立即关闭服务器。但是,当我在WildFly10中使用相同的内容时,服务器不会立即停止。

它发送关机信号,然后是解除绑定的datasource,然后是JMX等等。我发现MBeans可以完成,但不在这里工作:https://developer.jboss.org/thread/198579。这会产生一些错误,例如:

params和描述有不同的长度。

我想立即停止我的WildFly10服务器。有人做过这样的事吗?

EN

回答 2

Stack Overflow用户

发布于 2017-09-25 14:23:03

以下内容应该有效(只需处理例外情况):

代码语言:javascript
复制
MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
ObjectName objectName = new ObjectName("jboss.as:management-root=server");
mBeanServer.invoke(objectName, "shutdown", new Object[] { false, 0 }, 
        new String[] { boolean.class.getName(), int.class.getName() });
票数 1
EN

Stack Overflow用户

发布于 2017-10-04 10:41:41

您可以尝试使用jboss命令直接停止Wildfly服务器。当您想要停止服务器时,请确保服务器已启动并运行。

代码语言:javascript
复制
try {
    String jbossBinDir =  System.getProperty("jboss.server.base.dir").replace("standalone", "bin");
    Runtime.getRuntime().exec(jbossBinDir+"/" + "jboss-cli.bat --connect --controller=192.168.1.2  -c command=:shutdown");
    } 
    catch(IOException e) 
    {
      e.printStackTrace();
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46406547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档