2

我想检查一些 cli 命令是否对 java 有效。我无法使用当前正在运行的配置文件。此外,我根本不能使用正在运行的 Wildfly,因为我必须时不时地重新加载。

所以我想使用offline-cli(带有嵌入式服务器的cli)

我在做什么:

使用连接到 CLiorg.jboss.as.cli.scriptsupport.CLI

CLI cli = CLI.newInstance();
cli.connect("127.0.0.1",9990,"admin","admin".toCharArray());

通过 cli.cmd 启动嵌入式服务器

cli.cmd("embed-server --server-config=standalone.xml --std-out=discard");

但是除了我永远等待这个命令完成(?)之外,什么都没有发生。

我注意到的一件事是,在将我的应用程序部署configuration-management.war到 Wildfly 之后,状态更改为“已部署”。但是,服务无法启动。我没有太注意它,因为在那之后我可以看到我的应用程序的输出。也许这与它有关?

2016-06-29 15:59:55,333 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 83) WFLYUT0021: Registered web context: /configuration

2016-06-29 15:59:55,364 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) WFLYSRV0016: Replaced deployment "configuration-management.war" with deployment "configuration-management.war"

2016-06-29 15:59:55,364 INFO  [org.jboss.as.controller] (DeploymentScanner-threads - 2) WFLYCTL0183: Service status report

WFLYCTL0186:   Services which failed to start:      service jboss.deployment.unit."configuration-management.war".POST_MODULE



2016-06-29 16:00:29,530 INFO  [stdout] (default task-1) this is mine!

我的mozilla firefox左上角只有那个小小的死亡旋转轮,表明我还在等待响应。

有什么提示吗?

4

1 回答 1

1

当您启动嵌入式服务器时,它不会启动任何接口。这包括管理界面。看起来脚本支持不允许嵌入式 CLI。不过,您可以提交功能请求来支持它。

但是,您可以使用 CLI CommandContextAPI 来实现此目的。

final CommandContext commandContext = CommandContextFactory.getInstance().newCommandContext();
commandContext.handle("embed-server --jboss-home=/path/to/wildfly-10.0.0.Final");
commandContext.handle(":read-resource");
commandContext.handle("stop-embedded-server");

请注意某些命令,例如module add,也需要设置jboss.home.dir系统属性。

于 2016-06-29T17:09:38.117 回答