Как оцениваются свойства в затмении?
Пожалуйста, прочитайте с терпением, я старался изо всех сил, чтобы объяснить ситуацию, если нет, пожалуйста, прокомментируйте -
У меня два плагина говорят A
, B
, В обоих плагинах я определил выражение "и" для команды. Одним из условий в выражении "и" является проверка свойства, скажем, myprop
,A
не зависит от B
а также B
не зависит от A
,
Существует тестер свойств, определенный в третьем плагине, скажем, C
, A
, B
оба зависят от C
,
И в четвертом плагине D
точка расширения для org.eclipse.core.expressions.propertyTesters
определяется и список свойств для тестирования тестером определяется в плагине C
,
A
, B
зависит от плагина D
тоже.
Я вижу странное поведение в затмении - только когда активна перспектива, определенная плагином B, тестер свойств для myprop
называется. Так, когда запускается RCP, если плагин B
еще не активен, тестер свойств не тестирует свойство myprop
и он возвращает неожиданное значение, когда я нахожусь в перспективе плагина A
,
Позже, когда я поднимаю перспективу плагина B
Тесты собственности myprop
и плагин A
затем начинает работать правильно.
Вопрос: зачем тестеру свойств нужен плагин B
быть активным? Как свойства оцениваются в рамках Eclipse, есть ли порядок? или на самом деле я должен спросить: когда и как запускается тестер свойства для определенного свойства? Есть ли документация по этому поводу?
1 ответ
Вам, вероятно, нужно указать forcePluginActivation="true"
на test
элемент вашего выражения в том виде, в котором он звучит так, будто плагин, содержащий тестер свойств, не активирован ничем.