轻轻松松编译 Jmeter 源码,再也不求人

news/2024/5/20 1:53:49 标签: jmeter, android, gradle

Jmeter工具,大家在做接口测试、自动化测试,都是经常会用到的,甚至在做性能测试时,是首选工具。Jmeter本身是用java语言编写的开源的工具,在jmeter.apache.org官网上,可以下载。

但是,也耐不住那些想要自己编译jmeter源码的‘发烧友’,前几天,就被一位学生问到,如何使用jmeter源码包自己编译打包,今天,就来给大家讲讲jmeter源码打包。

对于没有写过java代码的同学,可能电脑上IDEA火eclipse等开发工具都没有安装,所以,我就用jmeter源码包自带的编译工具gradle来给大家讲讲如何编译打包。

  • 首先,从jmeter.apache.org网站上,找到socure中,选择一个包下载

如果你准备的电脑操作系统是linux或mac,则建议下载apache-jmeter-***_src.tgz包,解压。

  • 接下来,检查电脑是否安装了jdk8,java -version 。 这一步是因为jmeter源码编译需要java运行环境,所以需要有jdk。

如果返回如图,说明电脑上已经安装好了jdk8。

  • 接下来,进入jmeter源码包解压后的文件夹,修改gradle.properties文件,添加如下,保存。这个操作的目的是修改gradle源为国内阿里源,加快构建速度。
  •  

    # Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { # google() # jcenter() maven { url 'https://plugins.gradle.org/m2/' } maven { url 'https://maven.aliyun.com/nexus/content/repositories/google' } maven { url 'https://maven.aliyun.com/nexus/content/groups/public' } maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'} } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' # NOTE: Do not place your application dependencies here; they belong # in the individual module build.gradle files } } allprojects { repositories { # google() # jcenter() maven { url 'https://plugins.gradle.org/m2/' } maven { url 'https://maven.aliyun.com/nexus/content/repositories/google' } maven { url 'https://maven.aliyun.com/nexus/content/groups/public' } maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'} } } task clean(type: Delete) { delete rootProject.buildDir }
  • 做好了上面这些准备工作了,接下来,我们就可以开始打包了。在jmeter源码包解压后的文件夹中,执行
 

# linux or mac ./gradlew build # windows gradlew.bat build

这个时间可能有点长,请耐心等待。构建过程中,会显示进度与日志,如果过程中,出现失败,反复执行,多次执行后,还是报错,就看下报错信息,如果报错信息是‘task......’,这个没有关系,此时包已经打好。

进入bin文件夹,执行

 

# linux or mac ./jmeter # windows 双击 jmeter.bat

能正常启动图形界面,说明包已经打好,可以进入 源码包解压后的文件夹的 src/dist/build/distributions 中找到打包文件

解压后,就可像官方包一样使用了。

至此,源码打包已经完成,在这个过程中,不易把控的就是 gradlew打包过程,如果其中出现意外报错,请百度,或咨询周边熟悉gradle的同事。



 


http://www.niftyadmin.cn/n/207836.html

相关文章

【C++修行之路】面向对象三大特性之多态

文章目录前言认识多态构成多态的必要条件虚函数的重写虚函数重写的两个例外final和override重载、覆盖、隐藏抽象类多态的原理单继承多继承重写了基类的虚函数没有重写基类的虚函数菱形继承和菱形虚拟继承的虚表补充补充继承与多态相关问题inline函数可以是虚函数吗&#xff1f…

CPU占用率高怎么办?正确解决方法在这里!

案例:CPU占用率高怎么解决 【各位朋友,我的电脑现在运行太慢了,同事说可能是CPU占用率太高了,但对本电脑小白来说,完全不知道怎么处理,大家有什么好的方法可以解决这个问题吗?】 在计算机中&a…

文件上传漏洞最强总结

先看道题 源码 <meta charset"utf8"> <?php error_reporting(0); $file $_GET["file"]; if(stristr($file,"php://filter") || stristr($file,"zip://") || stristr($file,"phar://") || stristr($file,"…

4.7面试题

面试题 文章目录面试题JDK、JRE、JVM的区别&#xff1a;java的8种基本数据类型是什么&#xff1f;(简述java的8种基本数据类型&#xff09;switch可以作用于哪些数据类型上&#xff1f;抽象类和接口的区别&#xff1a;重写(overriding)与重载(overloading)的区别&#xff1a;实…

【C++】继承和多态

目录 一、简介 二、继承 1.继承的概念及定义 1.1继承的概念 1.2继承的定义 2.基类和派生类对象赋值转换 3.继承中的作用域 4.派生类的默认成员函数 5.继承与友元 6.继承与静态成员 7.复杂的菱形继承及菱形虚拟继承 7.1 单继承 7.2 多继承 7.3 多继承的缺点 8.继承…

python五角星编程代码绘制

大家好&#xff0c;我是你们的好朋友&#xff0c;今天继续分享 Python的编程知识。 在 Python中&#xff0c;有一个非常强大的数据可视化工具&#xff1a; database. dl &#xff08;&#xff09;&#xff0c;其中有一个功能就是可以绘制五角星。 什么是五角星&#xff1f; 在数…

leaflet实现波动的marker效果(131)

第131个 点击查看专栏目录 本示例的目的是介绍如何在vue+leaflet中显示波动的marker效果。 直接复制下面的 vue+leaflet源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共76行)安装插件相关API参考:专栏目标示例效果 配置方式 1)查看基础设置…

数组、vector是否会进行越界检查

数组和vector都采用连续存储空间来存储元素&#xff0c;支持随机访问&#xff0c;当我们访问的地址不在数组或者vector管理的范围内&#xff0c;这个时候是否会进行越界检查&#xff1f; 目录 1、数组是否会越界检查 2、vector是否会越界检查 1、数组是否会越界检查 数组不会…