2012-07-04 12 views
57

Estoy trabajando en archivos Javascript relativamente pequeños (100-300 líneas) en Eclipse y periódicamente se molesta mucho con algún fragmento de código y aparece este error cada vez que coloco el cursor sobre esa linea. El error es:El error de Eclipse aparece constantemente al editar Javascript

'Requesting JavaScript AST from Selection' has encountered a problem. 
An internal error occured during "Requesting JavaScript AST from selection". 
java.lang.NullPointerException 

Mientras Estoy convirtiendo esto:

if(p){ 
    // enter code here 
} else { return false; } 

en esto:

if(p){ 
    // enter code here 
} return false; 

el error aparece varias veces. Cada vez que detiene mi escritura y requiere que haga clic en el botón de Aceptar. Luego escribo dos caracteres más y el error aparece nuevamente.

¿Alguna idea de cómo evitar el error o deshabilitar el Javascript AST?

Esto está en Eclipse Java EE, Indigo Service Release 2. Es casi una instalación plana, solo se instalan dos complementos y ninguno es para SVN y no tiene nada que ver con Javascript.

+1

Puede rastrear el error [aquí Bug # 342461] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=342461) – Andrew

+3

Estoy teniendo el mismo problema. Eclipse es casi inutilizable para la edición de JavaScript en su estado actual. Ojalá hubiera una forma de desactivar lo que sea que lo esté causando. Prefiero tener un bloc de notas funcional que un generador de alerta trucado. –

+2

¡Encontré un truco! Cuando aparezca la ventana de error, no la cierre. Solo arrástralo hacia un lado, vuelve a enfocar la ventana principal y los nuevos errores no cambiarán el enfoque. – BishopZ

Respuesta

39

Al principio pensé que esto era solo un truco, pero está funcionando muy bien, tuve que publicarlo como una respuesta real.

Cuando aparece la ventana de error, no la cierre. Simplemente arrástralo hacia un lado, vuelve a enfocar la ventana principal y sigue editando.

Cuando se produce nuevamente el error, Eclipse no cambia el foco de nuevo al mensaje de error. El foco permanece en la ventana de edición y puede continuar editando el documento.

+1

Esta respuesta tonta es en realidad la mejor solución. No tiene que desactivar nada que prefiera mantener habilitado, y estará haciendo clic en "Aceptar" si tiene que esperar a que se solucione el error. – Redsandro

+1

especialmente porque "Marcar ocurrencias" es una funcionalidad valiosa y deshabilitarla dificulta todo tipo de otras tareas. Gracias por el comentario. – BishopZ

+2

Simplemente increíble, una pieza de software tan compleja y no tiene una casilla de verificación para deshabilitar todas las advertencias: S ... funciona, ¡¡así que me dan mi voto !!! –

78

Una mejor respuesta (del informe de errores vinculados por Cliff Ribaudo, comentario # 10 y otros):

Apague Toggle Marcos Ocurrencias (Alt-Shift-O o el icono de la brocha en la barra de herramientas, que cómodamente , le mostrará su estado actual).

Thanks Cliff!

Editado:

Via Preferences

+1

Estoy un poco preocupado por el hecho de "Marcar apariciones" puede estar dialogando algunas otras características que me gustaría conservar. No puedo encontrar ningún ejemplo de que esto sea cierto, pero aún así me preocupo. ¿Alguna idea al respecto? ¿Sabes qué ventajas proporciona "Ocurrencias de marca"? a los desarrolladores de Javascript? – BishopZ

+1

Se trata simplemente de desactivar la función de resaltar otras ocurrencias de cualquier variante ble, etc. tienes el cursor encendido. Entonces: var foo = 17; ... var bar = findOuterOtter (foo); // dejar el cursor aquí ......^ Destacaría tanto la declaración como todas las referencias a 'foo'. Nunca me ha funcionado muy bien JavaScript, y sospecho que aumentará la lentitud que a veces mostraría (pero no estoy convencido de ninguna manera, pero ahora que lo he apagado). –

+0

// dejar el cursor aquí ......^ (Lo siento, no puedo obtener el formato correcto del código en los comentarios, imagino el cursor en el último 'foo'). –

0

Irónicamente, la solución para mí fue instalar otro plugin. Después de instalar VJET y configurar mi proyecto de JavaScript para que fuera un proyecto habilitado para VJET, el problema desapareció.

0

basta con sustituir el código XML en el archivo de .project (que se encuentra en el directorio principal de su espacio de trabajo de Eclipse.

<?xml version="1.0" encoding="UTF-8"?> 
<projectDescription> 
    <name>your Project Name</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
    </buildSpec> 
    <natures> 
    </natures> 
</projectDescription> 
0

He estado recibiendo este error últimamente. Estoy escribiendo guiones maravillosos. La corrección para mí era actualizar el complemento Groovy.

0

Estaba obteniendo el mismo error con gc overhead limit exceeded descripción en la sección de detalles de error.Para tomar medidas al respecto he agregado el siguiente en la configuración y el problema resuelto.

Xms512m 
Xmx2048m 

Ref: GC overhead limit exceeded problem

En resumen, para mí se eclipsa problema de memoria.

Cuestiones relacionadas