如何监控maven和childs的网络连接?

时间:2013-05-03 09:57:22

标签: sockets maven networking strace

我们有一个运行多个集成测试的Maven项目。一些测试涉及产生子进程,如HSQLDB数据库,但也可能是任何maven插件可能正在打开到我不知道的地方的套接字连接。这引发了当在持续集成服务器的监狱环境中运行测试时,出现了大量失败连接的日志,而在我的本地机器中,一切都顺利进行。

如何跟踪给定Maven脚本及其所有子项打开的所有连接?

2 个答案:

答案 0 :(得分:1)

有关如何按流程跟踪网络连接的答案,请参阅https://unix.stackexchange.com/questions/30046/logging-outgoing-connections-as-they-happen

但是对于Maven,大多数连接可能是为了检查SNAPSHOT依赖关系的状态。

要解决这些问题,您应该在网络中设置Maven代理(如Nexus),然后告诉Maven通过所述代理解析所有依赖项。这应该会将外部连接性降低到接近0。

mvn -X(启用调试模式)也应该有所帮助。将输出写入日志文件并grep为http:

答案 1 :(得分:0)

我不确定,但要在构建项目时查看开发计算机上的所有网络活动,请使用wireshark或tcpdump。