zoukankan      html  css  js  c++  java
  • Mac下使用Apache TCPMon

    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启动端口

    

  • 相关阅读:
    APP调用微信支付
    怎么在腾讯云上部署项目
    Jfinal中使用redis
    Jfinal框架中使用WebSocket
    一道sql面试题
    git本地仓库上传到git远程仓库的指令
    怎么启动postsqlgres
    SpringMVC用List接收请求参数
    转发 电商面试题100问
    转--MyBatis-Plus代码自动生成工具
  • 原文地址:https://www.cnblogs.com/richaaaard/p/5019438.html
Copyright © 2011-2022 走看看