2013-05-03 2 views
2

Я пытаюсь создать систему модулей для моего приложения java, которое будет загружать модули (только файлы jar) в каталог. Каждый модуль будет иметь config.yml в нем, чтобы ссылаться на IE основного класса, если основной класс находится в com.example.core, а основной класс был назван «Main», он имел бы com.example.core.Main в нем , У меня есть, чтобы загрузить файл yml, и я могу получить это свойство, но я не могу решить, как загрузить класс из файла jar. Основной класс расширит класс, который находится в приложении загрузчика модуля, с именем «Module», поэтому мне нужно сохранить экземпляр и поместить его на карту, но все экземпляры расширят модуль. Это похоже на то, что делает Буккит (http://bukkit.org).Загрузить класс в файле Jar

Спасибо вам помочь,
Барт

ответ

0

ли вы имеете в виду, что вам необходимо загрузить банку файлы из каталога динамически?

URLClassLoader может соответствовать вашим потребностям.

Вот мой пример.

URL[] urls = .... 
URLClassLoader loader = new URLClassLoader(urls); 
Class<?> cls = loader.loadClass("com.example.core.Main"); 
Module module = (Module) cls.newInstance(); 

Я надеюсь, что это было бы полезно для вас.

Смежные вопросы