JMeter 源码解读 [2] - 目录结构分析
本来是准备自己写一个关于Jmeter
目录结构的分析,碰巧看到了这篇 官方文档 内容基本和我要写的差不都,就直接拿来翻译记录一下(对于其中一些过时的内容会直接删除掉)
JMeter 的代码目录主要是根据支持的协议和功能来组织的。这样设计的好处是开发者可以编译一个只支持某种协议的JMeter 包而不用编译整个应用。我们接下来会给到更多JMeter 代码目录的解析,因为大多数的JMeter开发者是用ecipse
来做开发环境,我们也用eclipse 的目录结构来做介绍
顶部目录
- bin - 包含.bat 和 . sh 这些文件用于启动JMeter。同时也包含了ApacheJmeter.jar 和 相关的配置文件
- build - build 脚本创建的目录,存放一些build过程生成的文件
- dist - build 脚本创建饿目录,存放最后输出的文件
- docs - JMeter 相关目录
- extras - ant 相关的其他文件
- lib - 包含JMeter 依赖的相关文件
- src - 子目录包含支持的协议和相关组件代码
- test - 单元测试目录
- xdocs - 用于生成文档的xml文件,JMeter用xml来生成文档
Lib 目录结构
- ext - 包含 JMeter 核心和协议相关的 jar 文件。把这些 jar 文件独立出来原因是如果都放在
lib/
目录里启动速度会变慢 - opt - 一些可选的 jar 用于 JMeter 的一些可选的功能。这些 jar 只有在build 和 运行的时候才会被引入。用户可以自己下来可选的 jar 放到整个目录里
Src 目录结构
- core - JMeter 核心功能和接口的代码目录,也是我们分析的重点
- components - 和协议无关的一些类,例如协议, GUI 组件等
- examples - 一些sampler的例子
- functions - 一些其他组件会使用的标准函数
- jorphan - 公共方法类 (https://markmail.org/message/xisc5fw2dr4bw4uy)
- protocol - 不同的协议支持代码
- junit - 测试相关的代码