a bunch of extra code
Why do you need three classes where the code is repeated?
https://github.com/bddicken/languages/blob/main/fibonacci/jvm/code.java Here you can see a static method that implements the algorithm, as well as an entry point where arguments are correctly processed and everything works well overall.
https://github.com/bddicken/languages/blob/main/fibonacci/jvm/fibonacci.java This class contains exactly the same implementation of the algorithm that was in the first case.
https://github.com/bddicken/languages/blob/main/fibonacci/jvm/run.java And already in the third grade you can find the entry point. In fact, you have three classes, where one of them does the same thing as the other two
The problem I described a few months ago has not yet been solved: https://github.com/bddicken/languages/issues/114