Evaluate alternative jmeter folder layout
- 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
Assessment
This issue has not been assessed yet.