2

Я разрабатываю среду сценариев для EMF и нуждаюсь в импорте плагина модели, чтобы мой скрипт мог использовать классы, сгенерированные моделью, но для этого мне нужно явно добавить плагин в мой импорт.Как импортировать проекты плагинов из моей рабочей области, не указав их?

Могу ли я сделать это автоматически? Как добавить все плагины рабочего пространства в мой импорт во время выполнения?

ответ

2

В манифесте связки вы можете использовать атрибут DynamicImport-Package: *, чтобы сделать все экспортированные пакеты видимыми.

Обратите внимание, что пакеты, импортированные через DynamicImport-Package, разрешаются каждый раз, когда требуется класс из пакета. Рассмотрим выборочный динамический импорт DynamicImport-Package: *;dynamic=mymodel или buddy policy в качестве лучших альтернатив.

+0

Спасибо за подсказку! То, что я делал, это разбор всех манифольд пакетов, а затем получение классаLoader, у которого был класс. Затем я бы загрузил класс, добавив его в HashMap, который имеет мой фактический ClassLoader. Таким образом, вы могли бы вызвать класс только один раз. Кроме того, с вашим кончиком мой скриптовый движок работает быстрее – herculanodavi

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

  • Нет связанных вопросов^_^