🤔 What's the problem you're trying to solve?
For issues like #3137 I find myself looking at the JUnit Platform which already has most of the tools needed to do class-path scanning efficiently. It would be easier if we used that instead of constantly trying to reinvent the wheel.
✨ What's your proposed solution?
Add a dependency on junit-platform-commons. Use it for class path scanning, annotation finding, classpath resource scanning, ect.
⛏ Have you considered any alternatives or workarounds?
Can't copy/paste the code because it is under a different license.
📚 Any additional context?
This could be taken much further by providing Cucumber-JVM only as a JUnit Platform Engine implementation. Though this would make it more difficult to use Cucumber on platforms that aren't JUnit (e.g. when using Scala) so that is probably not where we want to go.
🤔 What's the problem you're trying to solve?
For issues like #3137 I find myself looking at the JUnit Platform which already has most of the tools needed to do class-path scanning efficiently. It would be easier if we used that instead of constantly trying to reinvent the wheel.
✨ What's your proposed solution?
Add a dependency on
junit-platform-commons. Use it for class path scanning, annotation finding, classpath resource scanning, ect.⛏ Have you considered any alternatives or workarounds?
Can't copy/paste the code because it is under a different license.
📚 Any additional context?
This could be taken much further by providing Cucumber-JVM only as a JUnit Platform Engine implementation. Though this would make it more difficult to use Cucumber on platforms that aren't JUnit (e.g. when using Scala) so that is probably not where we want to go.