idea 运行jmeter源码_IDEA 编译 Jmeter 4.0 ( 二次开发_1 )

IDEA 编译 Jmeter

下载

下载源码后解压『Jmeter』,我这边下载的是最新的『apache-jmeter-4.0_src.tar』,解压。

解压

修改下列两个文件

eclipse.classpath 修改成 .classpath

eclipse.project 修改成 .project

如果修改不了,需要进入命令行去修改,我这边用的mac,可以直接在终端里面修改

mac - terminal

mv eclipse.classpath .classpath

mv eclipse.project .project

win - cmd

ren eclipse.classpath .classpath

ren eclipse.project .project

编译

打开『IDEA』,点击『import』,引入『eclipse』项目

直接『next』到底,导入『Jmeter4.0』项目

使用『ant』来下载『Jmeter』需要的jar包,首先要导入『ant』的『bulid.xml』

下载『jar』包

下载好了,是这个样子的,点击『F4』,或者下图右上角项目配置

项目导入后,『IDEA』有个『Sources』文件漏掉了,我们给它补上

补上之后,文件夹会变色

将报错的『jar』包,通通删除掉

把刚刚用『ant』下载的jar,添加到『IDEA』中

选择『lib』文件夹

导入『lib』后,是这个样子的,需要注意的是,这 4 个文件的『jar』都要导入进来。

添加好了之后,返回主界面,选择『ant』中的『install』

安装好了,『lib/ext』下就会出现『Jmeter』的核心『jar』包了

找到『src』 -> 『core』 -> 『NewDriver.java』,这个『java』文件是『Jmeter』的『main』方法,启动这个『java』。

启动,报错。大致意识就是没找到配置文件。又仔细观察了一下报错的路径『/Users/Yuki/Documents/Code/Java/Jmeter/bin/log4j2.xml』与我『jmeter4.0的路径确实不一样』正确的路径应该是『/Users/Yuki/Documents/Code/Java/Jmeter/apache-jmeter-4.0/bin/log4j2.xml』。说明『Jmeter』自己它找不到自己的根目录在哪里。

然后在『ant』编译的『build.xml』中,看到有这么一句话

-Djmeter.home=.. - path to JMeter home directory (defaults to parent of this build file)

那我们在『jmeter』启动的时候,给它加个参数,打开项目的配置。(如果运行过『NewDriver』,就会出现这个,不然要自己添加)

添加『Jmeter4.0』的目录

-Djmeter.home=/Users/Yuki/Documents/Code/Java/Jmeter/apache-jmeter-4.0

在jvm选项中添加

再回头运行『NewDriver』,成功运行,截图留念

测试下修改Jmerer源码是否能运行。

运行OK,可以尽情的学习源码了。

IDEA 编译 Jmeter 5.0(二次开发)

windows10 操作系统,jdk1.8,Intellij IDEA 2018,jmeter5.0 1.下载 http://jmeter.apache.org/download_jmeter.cgi ...

JMeter 源码二次开发函数示例

JMeter 源码二次开发函数示例 一.JMeter 5.0 版本 实际测试中,依靠jmeter自带的函数已经无法满足我们需求,这个时候就需要二次开发.本次导入的是jmeter 5.0的源码进行实际的 ...

IDEA 编译 Jmeter 5.0

IDEA 编译 Jmeter 5.0 1.下载源码后解压,我这边下载的是最新的『apache-jmeter-5.0_src.tar』,解压. 2.解压后 修改下列两个文件 eclipse.classp ...

scratch3.0二次开发scratch3.0基本介绍(第一章)

为什么要自己开发而不使用官方版本? 这个问题要看我们的做少儿编程教育的需求是怎么样的. scratch本身提供了离线版本以及官网在线平台供我们使用,这足以满足我们对于编程教学模块的需求.但是对于一些教 ...

CRMEB小程序商城v4.0二次开发对接集成阿里云短信

作者:廖飞 - CRMEB小程序商城研发项目组长 前言 cremb小程序商城v4.0版本支持短信平台为云信,但有部分用户有需求对接阿里云短信,这篇文章将对阿里云短信平台如何对接方以及对接流程详细说明. ...

JMeter4.0二次开发之导入eclipse

1.先建立工程,命名为JMeter4.0. JDK版本为10.0.1 2.在官网下载src文件,通过文件系统导入到JMeter4.0工程中 3.在ant中选择download_jars,ant会自动下 ...

VC++第三方库配置-OpenSpirit 4.2.0 二次开发

在VS中右击项目,点击属性 1.配置属性--常规--输出目录:Windows\VS2010\debug\ 2.配置属性--常规--中间目录:Windows\VS2010\debug\ 3.配置属性-- ...

转载-NX11.0二次开发新增Spreadsheet相关类的用法!

这几天搜NX对EXCAL读取写入相关的开发内容,发现唐工写了一篇关于NX11对EXCAL操作的文章.让我知道NX11新增了对EXCAL操作相关的类,以前NX里是没有的.我以前都是用OLE方式去做,没用 ...

随机推荐

一步步学习javascript基础篇(2):作用域和作用域链

作用域和作用域链 js的语法用法非常的灵活,且稍不注意就踩坑.这集来分析下作用域和作用域链.我们且从几道题目入手,您可以试着在心里猜想着答案. 问题一. if (true) { var str = & ...

SQL select结果集和return的区别

IF EXISTS (SELECT 1 FRIN sys.objects where object_id=OBJECT_ID(N'[dbo].[testReturn_up]')AND type in ...

jquery中prop()与attr()方法的区别

一.prop() 简单来说是当需要判断真假时使用,如复选框时: if( $(this).prop('checked')){ //当返回true时在这里调用 }else{ //当返回false时在这里调 ...

如何在Linux下重命名多个文件

在Linux中,当你想要改变一个文件名,使用mv命令就好了.然而mv不能使用通配符重命名多个文件.可以用sed.awk或者与xargs结合使用来处理多个文件的情况.然而,这些命令行即繁琐又不友好,并且 ...

hdu 5073 Galaxy(2014acm鞍山亚洲分部 D)

主题链接:http://acm.hdu.edu.cn/showproblem.php? pid=5073 Galaxy Time Limit: 2000/1000 MS (Java/Others)   ...

MapReduce的InputFormat学习过程

昨天,经过几个小时的学习.该MapReduce学习的某一位的方法的第一阶段.即当大多数文件的开头的Data至key-value制图.那是,InputFormat的过程.虽说过程不是非常难,可是也存在非 ...

C语言位运算符:与、或、异或、取反、左移和右移

语言位运算符:与.或.异或.取反.左移和右移 位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符 ...

Linux 多用户系统

Linux OS是基于Unix系统开发而来,我们知道计算机是昂贵与稀缺的资源,所以一台计算机就要满足多个用户同时使用,即多用户的系统的思想. 实现方式:通过分时共享的策略.即让多个用户可以同时使用一台 ...

TeamTalk安装测试

TeamTalk介绍 项目框架 TeamTalk是蘑菇街的开源项目,github维护的最后时间是2015但是仍然是一款值得学习的好项目,麻雀虽小五脏俱全,本项目涉及到多个平台.多种语言,简单关系如下图 ...

node.js之用ajax获取数据和ejs获取数据

摘要:学了node之后有时候分不清前台和后台,今天用ajax和ejs来从后台获取数据,没有数据库,用json数据来进行模拟数据库:来区分前台和后台需要干什么? 一.用ejs获取数据 1.文件目录 2. ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值