如何为Java应用程序提供telnet接口?
我想为我的Java应用程序提供一个telnet接口,主要是为了让开发人员在实现面向最终用户的GUI之前能够与应用程序交互、查看调试信息等如何为Java应用程序提供telnet接口?,java,Java,我想为我的Java应用程序提供一个telnet接口,主要是为了让开发人员在实现面向最终用户的GUI之前能够与应用程序交互、查看调试信息等 有人能推荐一种简单有效的方法吗?我考虑过嵌入scala解释器,但它似乎无法通过telnet访问。Beanshell也一样(我不太喜欢它,因为我认为它没有维护)。试试它对telnet相关的东西有好处。你考虑过使用JMX吗?它内置在jdk中,可以通过jconsole远程访问您配置它的任何方法 现在,它不会像ssh或telnet那样工作,因此可能无法完全满足您的需要
有人能推荐一种简单有效的方法吗?我考虑过嵌入scala解释器,但它似乎无法通过telnet访问。Beanshell也一样(我不太喜欢它,因为我认为它没有维护)。试试它对telnet相关的东西有好处。你考虑过使用JMX吗?它内置在jdk中,可以通过jconsole远程访问您配置它的任何方法 现在,它不会像ssh或telnet那样工作,因此可能无法完全满足您的需要。但如果您的目标是远程调用方法和调试信息,那么这就是它的主要目的 好处是,在构建UI后,您仍然可以使用JMX工具在其上线后监控性能。两个选项:
- Grizzly用于嵌入通用服务器(http://grizzly.java.net/)
- 米纳是另一个类似的选择(http://mina.apache.org/)
- 码头
- 雄猫
我认为嵌入式Jetty上面的所有选项可能是最简单的。我也遇到了同样的问题,并提出了一个(telnet服务器代码)plus(Java命令行历史编辑器、选项卡完成等)。我的应用程序在本地主机上侦听telnet连接,并在获得连接时运行CLI控制台循环
一个关键技巧是将行和列信息(通过telnet协议发送)从nvt4j传输到JLine,这样当您到达行的末尾时,事情就不会失控。如果您只需要通过telnet的行模式接口,您可以使用我的Java类。对,但它可以与某种shell集成吗,像Scala REPL甚至是Beanshell?另外,我并不需要对连接进行加密,因为它主要是本地的。嗯,谢谢-我将进一步调查JMX。有什么好的信息/教程指南吗?Sun(Oracle现在)提供了一个,Spring对它有很好的支持。我建议在谷歌上搜索一下。正式文档可能有点吓人,但JMX实际上非常易于使用。我唯一的建议是尽量将JMX与实际代码解耦。春天是最好的季节。但对于大多数事情来说,这是一个很好的建议。