2009-07-31 2 views
11

Получил эту ошибку сегодня, пытаясь построить проект с помощью checkstyle. Это работает для других людей в моем офисе, но я бы предпочел не переустанавливать Eclipse еще раз. Любая идея, что на самом деле означает эта ошибка?Checkstyle Ошибка в Eclipse - Не удалось создать символ табуляции

Errors occurred during the build. 
Errors running builder 'Checkstyle Builder' on project 'myproject'. 
    cannot initialize module TreeWalker - Unable to instantiate TabCharacter 
    cannot initialize module TreeWalker - Unable to instantiate TabCharacter 
cannot initialize module TreeWalker - Unable to instantiate TabCharacter 
cannot initialize module TreeWalker - Unable to instantiate TabCharacter 

Я собираюсь, что это как-то связано с символом табуляции, но не намного больше.

ОБНОВЛЕНИЕ: Версия Eclipse - 3.5, Checkstyle - 5.0.0.200906281855-final.

(Java является JDK 1.6.0_10)

+0

«Checkstyle является 5.0.0» означает TabCharacter больше недоступна: вы необходимо обновить конфигурационный файл Checkstyle и дважды проверить, какая версия Checkstyle использует «другие люди». – VonC

+0

Какое обновление файла требуется в точности? –

+0

В соответствии с этим: http://checkstyle.sourceforge.net/config_whitespace.html кажется, что проверка TabCharacter теперь называется FileTabCharacter. –

ответ

16

Как уже упоминалось в this bug, Checkstyle Plugin версия 5.0.0.200906281855:

Release notes of Checkstyle 5 утверждают, что некоторые из модулей и проверок, которые мы используем, не имеет обратной совместимости ,
E.g. модуль TabCharacter не встречается в версии 5 уже не (был заменен на FileTabCharacter), следовательно не может работать.
Проверка FileLength не требует синтаксического дерева, следовательно, уже не находится под родительским TreeWalker.

Это означает, что проблема может быть связана с автоматическим обновлением плагина Checkstyle в конфигурации вашего eclipse.

+0

Нашел проблему, и это было действительно так. Видимо, я вариант проверки, опережая других. Изменен checkstyle.xml, чтобы он соответствовал 5.0.0, спасибо за помощь. –

+0

Hitn для будущих читателей .. Были также сняты функции в 6.2. – Ewoks

+0

Я «будущий» читатель, и у меня проблема. У меня есть сотни [ERROR] MyClass.java [808: 1] (пробелы) FileTabCharacter: строка содержит символ табуляции. У меня есть плагин конфигурации Checkstyle для M2Eclipse \t \t 1.0.0.201503101518 com.basistech.m2e.code.quality.checkstyle.feature.feature.group: Затмение Checkstyle Plug-в \t \t 6.11.1.201510102004 net.sf.eclipsecs.feature.group \t http://eclipse-cs.sf.net/ Итак, что мне делать? – Aerox

0

«Одинаковая» проблема возникнет, если вы используете конфигурацию checkstyle с самоопределяемыми классами плагинов cs, а ваш plugin.jar не находится в вашем пути eclipse/plugin.

Таким образом, в этом случае ошибка будет просто сказать: Эй чувак: не может найти классы, пожалуйста, дайте мне его;)

+0

Я не верю, что классы, о которых я говорю в вопросе, сами определены. –

+0

Если вопрос один исправил вашу проблему, это нормально для вашего дела, но я думал, что другие могут работать в той же ловушке, что и я, и были бы рады увидеть второе возможное решение;) Точно или нет классы, большинство людей найдите эту «проблему», ищите некоторые части сообщения об ошибке. –

+0

В этом случае я предлагаю вам задать новый вопрос об этой проблеме, а затем ответить на собственный вопрос, так что гораздо более вероятно, что кто-то найдет правильный вопрос и правильный ответ. Тем более, что ваша проблема, вероятно, приведет к возникновению другого сообщения об ошибке и будет иметь совершенно другую причину. –

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

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