Apache JMeter


Building JMeter
  • a Java 8 compatible JDK (Java Development Kit)
  • Optional: Gradle installation
  • the JMeter sources as shown in the next section

Acquiring the source

The official source releases of Apache JMeter can be downloaded from download page.

Compiling and packaging JMeter using Gradle

JMeter can be built entirely using Gradle. The basic command is:

./gradlew build

See the list of available tasks via ./gradlew tasks (or ./gradlew tasks --all) for the other tasks that can be used. More detailed information about the available tasks can be found in gradle.md.

Opening project via IntelliJ IDEA

You require IntelliJ 2018.3.1 or newer.

  • Open the build.gradle.kts file with IntelliJ IDEA and choose "Open as Project"
  • Make sure "Create separate module per source set" is selected
  • Make sure "Use default gradle wrapper" is selected
  • In the "File already exists" dialogue, choose "Yes" to overwrite
  • In the "Open Project" dialogue, choose "Delete Existing Project and Import"

Compiling and packaging JMeter using Eclipse

Option 1 : Importing Eclipse project via Eclipse's "import Gradle project" wizard

File → Import... Existing Gradle Project

Option 2 : Setting up Eclipse project with Gradle task

./gradlew eclipse
File → Import → Existing projects into Workspace


Contributing to JMeter

We love contribution

We are very grateful to you if you take some time to contribute to the project. If you have some time to spend on the project you can pick existing enhancement or bug from Issues page.
You can also contribute to translation, see JMeter Localisation (Translator's Guide).

Submitting a patch

If you want to contribute to JMeter for a bug fix or enhancement, here is the procedure to follow:

Check your patch

Before submitting your patch ensure you do the following:
Check that patch compiles and follows Tab space policy by running:

./gradlew check

Check that patch does not break JUnit tests by running:

./gradlew test

Create a PR using GIT

  • Open a bugzilla issue, see Issues page
  • Fork Apache JMeter mirror
  • Clone your forked repository locally :
    git clone https://github.com/yourid/jmeter/
  • Create a branch using for example bugzilla id:
    git branch BUGID
  • Checkout the new branch :
    git checkout BUGID
  • commit your fix there :
    git commit -m 'Fix to BUGID' list of files
  • Please avoid creating merge commits in the PR. We embrace small changes, and merge commits are harder to review
  • Add JMeter repository as upstream :
    git remote add upstream http://www.github.com/apache/jmeter
  • push it :
    git push origin BUGID
  • Create a PR and link it in the bugzilla issue

Different operation systems have different defaults for end-of-line markers. Typical configuration is CRLF for Windows and LF for macOS and GNU/Linux.
It is recommended to follow that configuration by appropriate settings of core.autocrlf. For Windows
git config --global core.autocrlf true
, and for macOS and GNU/Linux set
git config --global core.autocrlf input
Git will automatically recognize text files in the repository thanks to .gitattributes, and Git will convert line endings for text files to the appropriate platform-native format (according to core.autocrlf)
Certain files (e.g. *.sh or *.bat) have predefined end of line policy no matter the configuration of the developer workstation.

Create a PR using Patch

  • Open a bugzilla issue, see Issues page
  • Checkout Apache JMeter source
  • Code your fix
  • Create your patch by Right clicking on Eclipse project and select Team → Create Patch …
  • Attach your patch to the bugzilla issue


Automated builds

Automated (nightly) builds

As part of the development process, the JMeter project has access to various Continuous Integration (CI) server builds. The build output can be useful for testing recent changes to the code-base.

Please note that the builds have not undergone any QA and should only be used for development testing. For further information, see the Nightly builds for developers page.


Building Add-Ons

Building Add-Ons

There is no need to build JMeter if you just want to build an add-on. Just download the binary archive and add the jars to the classpath or use Maven artifacts to build your add-ons. You may want to also download the source so it can be used by the IDE.

See the extras/addons* files in the source tree for some suggestions




Copyright © 1999-2020, Apache Software Foundation
Apache, Apache JMeter, JMeter, the Apache feather, and the Apache JMeter logo are trademarks of the Apache Software Foundation.