Hey Leute,
Also ich hab mal nach nem neuen Projekt für mich gesucht und da ich sowas noch nie gemacht habe, wollte ich ein Programm entwerfen, das mit Plugins erweiterbar ist.
Ich hab mich gleich heute Abend dran gesetzt und kam auch soweit, dass Jars geladen und benutzt werden. Erstmal läuft das ganze grafisch ab.
Doch nun würde ich gerne eine Ebene tiefer gehen.
Ich will praktisch, dass das Plugin wirklich mit dem Programm arbeitet, also die Klassen und Methoden des Programms mitbenutzen kann. Weil, was bringt es mir, wenn in einem Programm 10 Programme separat laufen? Ist das so überhaupt möglich? Eventuell so auch gar nicht gewollt?
Hab jetzt zwar viel über Reflections gelesen, aber irgendwie noch keine richtige Antwort gefunden und auch noch keinen Lösungsansatz. Auch hab ich von OSGI, JPF gelesen, die ich mir aber beide noch nicht angeschaut habe (will ja erstmal selbst schauen wie man sowas macht. )
Also wäre cool, wenn mir jemand einen Ansatz geben kann oder am besten halt erklären kann wie genau sowas funktioniert! Bin auch offen für Code-Schnipsel. Wenn ichs angewendet sehe, verstehe ichs am besten!
Liebe Grüße,
Jens
Also ich hab mal nach nem neuen Projekt für mich gesucht und da ich sowas noch nie gemacht habe, wollte ich ein Programm entwerfen, das mit Plugins erweiterbar ist.
Ich hab mich gleich heute Abend dran gesetzt und kam auch soweit, dass Jars geladen und benutzt werden. Erstmal läuft das ganze grafisch ab.
Doch nun würde ich gerne eine Ebene tiefer gehen.
Ich will praktisch, dass das Plugin wirklich mit dem Programm arbeitet, also die Klassen und Methoden des Programms mitbenutzen kann. Weil, was bringt es mir, wenn in einem Programm 10 Programme separat laufen? Ist das so überhaupt möglich? Eventuell so auch gar nicht gewollt?
Hab jetzt zwar viel über Reflections gelesen, aber irgendwie noch keine richtige Antwort gefunden und auch noch keinen Lösungsansatz. Auch hab ich von OSGI, JPF gelesen, die ich mir aber beide noch nicht angeschaut habe (will ja erstmal selbst schauen wie man sowas macht. )
Also wäre cool, wenn mir jemand einen Ansatz geben kann oder am besten halt erklären kann wie genau sowas funktioniert! Bin auch offen für Code-Schnipsel. Wenn ichs angewendet sehe, verstehe ichs am besten!
Liebe Grüße,
Jens