Zitat:
Nur wie instanziere ich diese Klasse bzw woher weiß ich überhaupt dass sie existiert?
|
Ich würd einfach das Plugin Verzeichnis aufmachen und nachschauen:
java.io.File mit den Methoden: isDirectory() und listFiles()
Klassen instanzieren von denen man den Namen erst zur Laufzeit kennt geht mit der Methode Class.forName() (der Überbegriff dazu ist Reflection).
http://java.sun.com/developer/techni...LT/Reflection/
Zitat:
Und wie umgehe ich, dass sich das Programm aufhängt, wenn das PlugIn fehlerhaft ist?
|
Kommt drauf an...
Den Klassischen "diese Anwendung verursachte eine Zugriffsverletzung" Fehler fängst du in Java mit Exception handling ab (try{}catch(SomeException se){}catch(SomeOtherException soe){}finally{} Blöcke).
Das andere Problem ist, was passiert wenn das Plugin in eine Endlosschleife hineinläuft. Um auf so etwas reagieren zu können ist es auf jeden Fall sinnvoll das Plugin in einem eigenen Thread zu starten.
jak
____________________________________
Join the DNRC |
Godwin\'s Law (thx@stona)
Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing.
\"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra)