您的位置:首页 > 理论基础 > 计算机网络

Mac下使用Apache TCPMon

2015-12-04 15:31 555 查看

Mac下使用Apache TCPMon

参考链接:

TCPMon Tutorial

Anyone know how to get TCPMON working on a mac?

Apache TCPMon

是一个开源的检查TCP网络数据流的调试工具。TCPMon处在客户端(消费者)和服务器之间,客户端与TCPMon连接,然后TCPMon将数据发送给服务器,并将数据显示到它的客户端显示。

Apache TCPMon 的下载地址:
http://archive.apache.org/dist/ws/tcpmon/1.0/


注意 只是一个与code.google.com上不同的TCPMon

下面是一个坑

如果按照Apache或者网上很多链接里面搜索到的使用方法,在mac下直接运行

build/tcpmon.sh

然后会得到系统反馈

-bash: build/tcpmon.sh: Permission denied

即使修改文件权限

sudo chmod 755 'build/tcpmon.sh'

仍然会得到一个运行错误说找不到“TCPMon”

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/ws/commons/tcpmon/TCPMon
Caused by: java.lang.ClassNotFoundException: org.apache.ws.commons.tcpmon.TCPMon
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

如果尝试通过java运行

$ java -jar tcpmon-1.0.jar
Failed to load Main-Class manifest attribute from tcpmon-1.0.jar

所以这里的jar包打的有问题,我们需要重新生成这个jar

apache.org上下载tcpmon-1.0.src.zip,然后用Eclipse工程打开重新生成新的jar(我这里用的是JDK7)

第一步

新建一个工程并将src里面的java代码引入



第二步

右件选择项目然后Properties -> Export



第三步

选择Runnable JAR file并生成tcpmon-1.0-fixed.jar





第四步

我们可以双击运行tcpmon-1.0-fixed.jar



坑结束

使用Apache TCPMon

如下图中



“Listen Port # 9000”,是客户端连接TCPMon的端口号

client.setServiceClass(HelloWorld.class);
client.setAddress("http://localhost:9001/cxf/services/HelloService");
HelloWorld helloworld = (HelloWorld) client.create();
System.out.println(helloworld.sayHi("Richard"));


“Target Hostname 127.0.0.1”,是本地IP

“Target Port # 8080”,通常是本地Tomcat启动端口


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: