Activator.getImageDescriptor (путь) возвращает значение NULL, даже несмотря на то, что plugin.xml использует одинаковый путь для значков - PullRequest
4 голосов
/ 04 декабря 2011

В подклассе StyledCellLabelProvider у меня есть такая строка:

ImageDescriptor d = Activator.getImageDescriptor("/icons/sample.gif");

Однако переменная d всегда равна null. Как ни странно, изображение правильно отображается в верхнем левом углу представления, когда я указываю точно такой же путь в plugin.xml:

  <view
        name="Message"
        allowMultiple="true"
        icon="/icons/sample.gif"
        class="com.myapp.views.EmailView"
        id="com.myapp.gui.emailView">
  </view>

Путь этого изображения в моем проекте является стандартным местоположением <project>/icons/sample.gif, а исходный код плагина находится в <project>/src.

К сожалению, в примере проекта плагина "RCP Mail Template" (успешно) используется идентичная функция для получения ссылки на ImageDescriptor:

ImageDescriptor d = Activator.getImageDescriptor("/icons/sample.gif");

Может ли быть что-то не так с моей конфигурацией плагина, из-за которой изображения не будут найдены при программной ссылке?

1 Ответ

8 голосов
/ 04 декабря 2011

Но статические getImageDescriptor методы вашего Activator класса и класса Activator RCP Mail Template отличаются. Возможно, вы используете неверный идентификатор плагина там?

...