First of all, Manager (a Kotlin class) inherits from JavaPlugin (which is a Java class).
This JavaPlugin class contains a getter method getPlugin(Class<T>).
Manager class:
class Manager : JavaPlugin() {
companion object {
[more code...]
lateinit var plugin: Manager
private set
}
[more code...]
}
Now back in any other Java class (my project is mixed between the two languages) I want to call Manager.getPlugin(), but in Java there is still only the method from the JavaPlugin class, which was inherited.
In Kotlin files, I am able to retrieve plugin variable, but in Java files, I could not figure out how this possible.
I know that I could use Manager.Companion.getPlugin() now, but I do not want to change my old Java code (which contains the old static Manager.getPlugin() call).
Am I just wrong here with the companion object and should use something different in order to emulate my old static variable with a static getter? (I read that you could place the variables outside of the class, but I did not get how to access these variables then under the name Manager (it only worked with ManagerKt).)
I hope someone has a better title for this question and edits it.
Annotate your method
@JvmStatic.