Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Telnet的ExpectJ_Java_Telnet_Expectj - Fatal编程技术网

Java Telnet的ExpectJ

Java Telnet的ExpectJ,java,telnet,expectj,Java,Telnet,Expectj,我想在Java中使用Expect的等价物。 这是一个简单的代码: public class TelnetJExpect { @Test public void telnetTest() { ExpectJ expectinator = new ExpectJ(5); try { Spawn shell = expectinator.spawn("172.17.80.161", 23);

我想在Java中使用Expect的等价物。 这是一个简单的代码:

public class TelnetJExpect
{
    @Test
    public void telnetTest() 
    {
        ExpectJ expectinator = new ExpectJ(5);
        try
        {
            Spawn shell = expectinator.spawn("172.17.80.161", 23);
            System.out.println("\nExit: " + shell.getCurrentStandardOutContents());
            shell.stop();
        }
        catch (Exception e)
        {
            e.printStackTrace();
            assertTrue(false);
        }
    }
}
结果,我得到了垃圾:

ÿýÿý ÿý#ÿý'
出口:

ÿýÿý ÿý#ÿý'
然而,当我从命令行使用telnet时,我获得了连接

请帮忙。

试试这个

    ExpectJ ex = new ExpectJ(50);

    //org.apache.commons.net.telnet.TelnetClient
    TelnetClient telnetClient = new TelnetClient();
    telnetClient.connect("192.168.56.101");

    /*
     * add this constructor to TelnetSpawn
     * 
     * public TelnetSpawn(InputStream in, OutputStream out) throws IOException {
        this.m_socket = null;
        m_fromSocket = in;
        m_toSocket = out;
     */
    TelnetSpawn telnetSpawn = new TelnetSpawn(telnetClient.getInputStream(), telnetClient.getOutputStream());
    Spawn spawn = ex.spawn(telnetSpawn);
    try{
        //provide username and password here
        spawn.interact();
    }catch(NullPointerException npe){
        //ignore, nasty expectj bug
    }