Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Building JMeter plug-in with Eclipse

Targetted to Eclipse 3.1 and JMeter 2.1 trunk version.

...

  • Let Eclipse internal compiler handle the building of JMeter
  • Source build paths:
  • src/protocol/ftp
  • test/src
  • src/protocol/http
  • src/protocol/java
  • src/protocol/jdbc
  • src/protocol/tcp
  • src/monitor/components
  • src/monitor/model
  • src/components
  • src/core
  • src/examples
  • src/functions
  • src/htmlparser
  • src/jorphan
  • src/junit
  • src/reports
    • Exclude following files from building
      • They have missing dependencies and are related to HTTP security which you are not probably interested in
      • org/apache/jmeter/util/JsseSSLManager.java
      • org/apache/jmeter/util/keystore/DefaultKeyStore.java
      • org/apache/jmeter/util/keystore/PKCS12KeyStore.java
    • Add libraries
      • All jar files under lib/ folder
      • There is one missing dependency which causes start-up failure with message Caused by: java.lang.NoClassDefFoundError: org/apache/avalon/excalibur/i18n/ResourceManager if you try to configure logger. Get the jar file from http://mirrors.bevc.net/apache/excalibur/excalibur-i18n/binaries/ and place it to lib/
    • Now Eclipse should build JMeter without errors (stop icons in source tree)

...

  • Create a new Java project
  • Add jmeter-trunk to project dependencies
  • Create bin/ and src/ folders
  • Create "jmeter.properties" in the bin/
    • This defines where JMeter internal class loader looks for classes
    • It should look like this
No Format
search_paths=../../jmeter-trunk/bin/protocol/ftp; \
			 ../../jmeter-trunk/bin/protocol/http; \
			 ../../jmeter-trunk/bin/protocol/java; \
			 ../../jmeter-trunk/bin/protocol/jdbc; \
			 ../../jmeter-trunk/bin/protocol/ldap; \
			 ../../jmeter-trunk/bin/protocol/tcp; \
			 ../../jmeter-trunk/bin/components; \
			 ../../jmeter-trunk/bin/core; \
			 ../../jmeter-trunk/bin/default; \
			 ../../jmeter-trunk/bin/functions; \
			 ../../jmeter-trunk/bin/htmlparser; \
			 ../../jmeter-trunk/bin/jorphan \
			 .

4. Setting up a custom Jakarta JMeter launcher

  • Set working directory to bin/ in your project
  • Copy lib/ from jmeter-trunk to your plug-in project root

5. Also, you might want to modify class