从tshark到java程序的管道数据

从tshark到java程序的管道数据,java,sql,tshark,Java,Sql,Tshark,我使用tshark捕获TCP流量,我想创建一个java应用程序,从tshark接收数据包,提取一些字段,然后将这些字段直接放入SQL数据库中 在tshark中,我使用这个命令 C:\Program Files\Wireshark>tshark -r 111.pcapng -T fields -e frame.number -e ip. src -e tcp.window_size_value -e frame.time -e data.text -e tcp.analysis.du

我使用tshark捕获TCP流量,我想创建一个java应用程序,从tshark接收数据包,提取一些字段,然后将这些字段直接放入SQL数据库中

在tshark中,我使用这个命令

    C:\Program Files\Wireshark>tshark -r 111.pcapng -T fields -e frame.number -e ip.
src -e tcp.window_size_value -e frame.time -e data.text -e tcp.analysis.duplicat
e_ack -e tcp.analysis.out_of_order -e tcp.analysis.retransmission -e tcp.analysi
s.fast_retransmission -e tcp.analysis.spurious_retransmission -e tcp.analysis.ze
ro_window -e tcp.stream -E header=y -E separator=, -l | java JavaApplication5
它可以工作并开始将数据管道化到JavaApplication5,但在我看来什么都没有

这里是我在java中使用的代码

    import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.*;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


/**
 *
 * @author sheda
 */
public class JavaApplication5 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args)throws IOException{
        // TODO code application logic here
        try {
            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

        String s;
        while ((s=in.readLine())!=null&&s.length()!=0) {            
            System.out.println(s);
        }

        } catch (LinkageError e) {
        }



    }

}
当我运行netbeans时,它会给我java.lang.NoClassDefFoundError

为什么?

另一个想法是,我想直接从tshark的STDIN和STDOUT中读取内容,并将读取的内容保存在字符串中以备将来处理。将字符串与预定义的字符串格式进行比较,提取信息,然后将其直接转发到SQL数据库

有人帮忙吗


非常感谢

您能包含异常的完整stacktrace吗?我试图添加printstacktrace,但它给出了我的这个java.lang.NoClassDefFoundError:javaapplication8/javaapplication8异常在线程主java结果:1您说您得到了java.lang.NoClassDefFoundError,但您怎么知道?如果它在控制台上打印了该异常,那么应该有一个附带的堆栈跟踪。请阅读我添加的@aioobe的答案