apache / apache/jmeter

Evaluate alternative jmeter folder layout

Open
#5,997 0 comments 0 reactions 0 assignees View on GitHub
enhancement to-triage
Dominant language
Java
Stars
9.5k
Forks
2.3k
Avg merge
1d 22h
Merged PRs (30d)
5

Description

### Use case

There are several use cases:
a) Testing JMeter (e.g. creating folders for end-to-end testing, for client-server mode)
b) Adding and removing plugins without accidentally deleting JMeter jars. Currently, we suggest adding jars to `lib/ext`, however, people sometimes mix `lib` and `lib/ext`, and they sometimes accidentally delete core jars from `lib/ext`.
c) Sometimes it might be beneficial to store logs separate from the main application itself. For instance, currently, it is impossible to share a common jmeter installation since plugin installation requires modifying `lib/ext` folder. It might be better if logs, plugins, and user-modifieable configuration properties could be stored separately from the main application jars

### Possible solution

a) Use http://jboss-modules.github.io/jboss-modules/manual/ for loading modules
b) Use Java 11+ module layers (e.g. https://github.com/moditect/layrry)

I think OSGi is not an option as it would create extreme burden on plugin authors.

I have not explored `jboss-modules` in detail, however, it sounds interesting.

---

As an additional option, we might consider implementing a dependency resolution as well.
For instance, something like https://github.com/square/maven-archeologist might work for us.
Then we could leverage existing Maven repositories (e.g. Maven Central) for resolving plugins, and dependencies.

### Possible workarounds

_No response_

### JMeter Version

5.5

### Java Version

_No response_

### OS Version

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.