如何为我的Java应用程序提供telnet接口?

时间:2011-04-04 17:39:58

标签: java

我想为我的Java应用程序提供一个telnet接口,主要是为了让开发人员可以与应用程序交互,查看调试信息等 - 在我们实现完全面向最终用户的GUI之前。

任何人都可以推荐一种简单有效的方法吗?我已经看过嵌入scala解释器,但它似乎无法通过telnet访问。同样是Beanshell(我不太热衷于此,因为我认为它没有维护)。

5 个答案:

答案 0 :(得分:1)

你考虑过使用JMX吗?它内置于jdk中,可以通过jconsole远程访问您配置它的任何方法。

现在它不会像ssh或telnet那样工作,所以它可能无法完全满足您的需求。但是如果您的目标是远程访问调用方法和调试信息,那就是它的主要目的。

奖励是在您构建UI之后,您仍然可以使用JMX来监控性能上线后的性能。

答案 1 :(得分:1)

几个选项:

  • Grizzly用于嵌入通用服务器(http://grizzly.java.net/)
  • Mina是另一个类似的选择(http://mina.apache.org/)<< li>

而不是Telnet,可能更容易嵌入Web服务器。并不是说CLI不是很酷,但它可能更容易/更友好。

JMX非常适合监控,但UI对于“写入”数据并不是很好。 NetBeans中有一些很好的教程项目。

我认为嵌入式Jetty上面的所有选项可能都是最简单的。

答案 2 :(得分:0)

尝试使用Jsh对telnet相关的东西。

答案 3 :(得分:0)

我遇到了同样的问题,提出了slightly ugly combination nvt4j(telnet服务器代码)加JLine(Java命令行历史编辑器,制表符完成等)。我的应用程序在localhost上侦听telnet连接,并在获得连接时运行CLI控制台循环。

一个关键的技巧是获取从nvt4j传输到JLine的行和列信息(通过telnet协议发送),这样当你到达行尾时,事情不会变得混乱。

答案 4 :(得分:0)

如果您只需要通过Telnet的线路模式接口,则可以使用我的Java类TelnetStdioRedirector