Ошибка отладчика Eclipse: оценки должны содержать выражение

private Binding createImplicitBinding(Key<?> key, boolean optional) {

    JClassType rawClassType = keyUtil.getRawClassType(key);

    if (rawClassType.equals(ginjectorInterface)) {
       return ginjectorBindingProvider.get();
    }
     ......
 }

Для приведенного выше фрагмента я установил точку останова на if (rawClassType.equals(ginjectorInterface)) с условием rawClassType==null, надеясь, что поток приостановится только после его выполнения. Но я продолжаю получать ошибку:

Вычисления eclipse должны содержать выражение

Кто-нибудь может сказать мне, почему? Кстати, JClassType — это интерфейс.


person Alex Luya    schedule 17.11.2011    source источник
comment
Вы когда-нибудь получали ответ? Это меня раздражает... используя Eclipse 3.7.x (Indigo)   -  person wrschneider    schedule 02.03.2012
comment
@wrschneider вы используете дженерики?   -  person committedandroider    schedule 03.06.2019


Ответы (1)


Это может быть ошибка Eclipse, связанная с тем, как его собственный синтаксический анализатор обрабатывает общие типы, такие как Key<?> выше.

https://bugs.eclipse.org/bugs/show_bug.cgi?id=344856

Обходной путь, похоже, не работает для меня - и, похоже, не применим к вашему примеру.

person wrschneider    schedule 07.03.2012