Java to Erlang messages

前端 未结 3 497
别那么骄傲
别那么骄傲 2021-01-12 10:40

I\'m making a application in Erlang, with a GUI in Java. I\'ve managed to establish a connection between the to languages, but now i need to (i guess) send a message from Ja

3条回答
  •  粉色の甜心
    2021-01-12 11:34

    If jinterface is too complicated you might just use the packet option on open_port and use

    byte[] in_buf = new byte[256];
    byte[] out_buf = new byte[256];
    int in_count = System.in.read ();
    int offset = 0; 
    do
        {
            int c = System.in.read (in_buf, offset, in_count-offset);
            offset += c;
        }
    while (offset < in_count);
    

    To read packets from erlang and to write use:

    System.out.write(out_count);
    System.out.write(out_buf, 0, out_count);
    

    On the erlang side this would match with

    open_port({spawn, " -cp  your-java-prog", 
              [{packet, 1}]).
    

    If you need larger packets use {packet, 2} or {packet, 4} and adapt the java. Inside the packets you can run whatever protocol you like on both sides.

提交回复
热议问题