我尝试使用“spring shell”创建一个控制台,我想运行我自己的 netty socket 服务器命令。我有一个命令:
@CliCommand(value = "server", help = "Start socket server")
public String server(
@CliOption(key = {"port", "p"}, mandatory = true, help = "Port number [49152-65535]") final String port,
@CliOption(key = {"maxclients", "mc"}, mandatory = false, help = "Max clients", unspecifiedDefaultValue = "50") final String maxClients
)
{
NettyServer nettyServer = new NettyServer(Integer.parseInt(port), Integer.parseInt(maxClients));
nettyServer.run();
return "::CliCommand return::";
}
当服务器运行时,它会阻塞控制台并且不能输入其他命令。你不应该有解决方案吗?比如如何让它单独运行,只通过命令影响服务器。例如,我想从我的控制台向客户端发送消息。