2009-07-31 19 views
11

Recibí este error hoy al intentar crear un proyecto con checkstyle. Esto funciona para otras personas en mi oficina, pero preferiría no reinstalar Eclipse una vez más. ¿Alguna idea de lo que este error realmente significa?Error de comprobación en Eclipse: no se pudo crear una instancia del carácter de tabulación

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 

Estoy recopilando que tiene algo que ver con el carácter de tabulación, pero no mucho más.

ACTUALIZACIÓN: Versión de Eclipse es 3.5, Checkstyle es 5.0.0.200906281855-final.

(Java JDK 1.6.0_10 es)

+0

"Checkstyle es 5.0.0" significa TabCharacter ya no está disponible: se necesita actualizar su archivo de configuración de Checkstyle y verificar qué versión de Checkstyle usan las "otras personas". – VonC

+0

¿Qué actualización exactamente se requiere del archivo? –

+0

Según esto: http://checkstyle.sourceforge.net/config_whitespace.html parece que la comprobación TabCharacter ahora se llama FileTabCharacter. –

Respuesta

16

Como se mencionó en this bug, Checkstyle Plugin versión 5.0.0.200906281855:

Release notes of Checkstyle 5 estado que algunos de los módulos y los cheques que estamos utilizando no son compatibles .
P. ej. el módulo TabCharacter no aparece en v5 más (fue reemplazado por FileTabCharacter), por lo tanto no puede funcionar.
El cheque FileLength no requiere un árbol de sintaxis, por lo que ya no está bajo el padre TreeWalker.

Eso significa que su problema podría ser con una actualización automática del complemento Checkstyle en su configuración de eclipse.

+0

Encontré el problema y fue de hecho esto. Aparentemente soy una versión de Checkstyle antes que otros. Checkstyle.xml modificado para adaptarse a 5.0.0, gracias por la ayuda. –

+0

Hitn para lectores futuros ... También se eliminaron las características en 6.2. – Ewoks

+0

Soy un lector "futuro" y todavía tengo el problema. Tengo cientos de [ERROR] MyClass.java [808: 1] (espacio en blanco) FileTabCharacter: Line contiene un carácter de tabulación. Tengo Checkstyle plugin de configuración para M2Eclipse \t 1.0.0.201503101518 \t com.basistech.m2e.code.quality.checkstyle.feature.feature.group: Eclipse Checkstyle Plug-in \t 6.11.1.201510102004 \t net.sf.eclipsecs.feature.group \t http://eclipse-cs.sf.net/ Entonces, ¿qué tengo que hacer? – Aerox

0

Se producirá el "mismo" problema, si utiliza una configuración de estilo de control con clases de complemento cs auto definidas y su plugin.jar no está en su ruta de eclipse/complemento.

Así que en este caso el error simplemente dirán: Hey dude: no puede encontrar sus clases, por favor, dar a mí;)

+0

No creo que las clases a las que me refiero en la pregunta estén definidas por uno mismo. –

+0

Si la primera pregunta solucionó tu problema, está bien para tu caso, pero pensé que podría haber otros que corrían en la misma trampa que yo y me gustaría ver una segunda solución;) Ya sea que las clases sean exactas o no, la mayoría de las personas encuentre este "problema" buscando algunas partes del mensaje de error también. –

+0

En ese caso, le sugiero que haga una nueva pregunta sobre ese tema y luego responda su propia pregunta, de esa manera es mucho más probable que alguien encuentre la pregunta correcta y la respuesta correcta. Especialmente porque su problema probablemente producirá un mensaje de error diferente y tendrá un motivo completamente diferente. –

Cuestiones relacionadas