2017-01-09 7 views
0

У меня есть плагин Eclipse и узнал, что я могу получить рабочее пространство в зависимости от пути пучка для этого, как это:Platform.getBundle возвращает нуль

Bundle bundle = FrameworkUtil.getBundle(getClass()); 
IPath path = Platform.getStateLocation(bundle); 

Если я ставлю этот код в запуске методу мой Класс активатора Bundle работает нормально. Но мне нужен путь в другом классе в моем плагине.

Теперь, я пытался сделать, получить 'Bundle', как это:

bundleID = "de.some.thing.plugin" // ID of that plugin like in plugin.xml 
    Bundle bundle = Platform.getBundle(bundleID); 
    ... 

Но это возвращает нуль. Может ли кто-нибудь помочь мне устранить неполадки или понять, почему это не работает?

ответ

2

Вы не говорите, что такое bundleId. Это должна быть строка, содержащая идентификатор плагина - это значение Bundle-SymbolicName в файле MANIFEST.MF плагина (оставляя что-либо после любой точки с запятой).

В редакторе MANIFEST.MF это отображается в поле «ID» на вкладке «Обзор».

Примечание: FrameworkUtil.getBundle(getClass()) будет работать в любом классе вашего плагина не только с активатором.

+0

Я не ожидал, что FrameworkUtil.getBundle (getClass()) будет работать в любом классе моего плагина. Но ты прав. Что помогает! Большое спасибо! – July

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

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