2012-03-10 10 views
13

Soy un principiante en MyEclipse IDEA. Estoy usando la versión 8.6.1 de la misma. Mi problema es: cuando ejecuto mi programa en modo de depuración, MyEclipse vaya a la clase sun.misc.URLClassPath y debo Resume punto de interrupción (presionando la tecla F8) y sigo ejecutando mi programa. MyEclipse estancia en URLClassPath clase en la pila siguiente hilo:Tiene un punto de corte implícito MyEclipse en el modo de depuración en la clase URLClassPath

1. URLClassPath$JarLoader.<init>(URL, URLStreamHandler, HashMap) line: 581 
2. URLClassPath$JarLoader.ensureOpen() line: 631  
3. URLClassPath$JarLoader.getJarFile(URL) line: 641 
4. URLClassPath$JarLoader.ensureOpen() line: 631  

Nota: este evento cuando ocurra algún archivo jar existe en mi proyecto Build-Path pero cuando mi solicitud es simple este problema no lo hacen y el primer punto de ruptura es mi primer punto de interrupción .

¿Por qué sucedió este evento?

+0

He encontrado el mismo problema. Parece que la razón radica en el nombre del jar. El eclipse jar original debería abrir es 'gwt-servlet-2.1.0.jar' y durante los cuadros de la pila de alguna manera se convirtió en 'gwt-servlet.jar', por lo tanto, no se puede encontrar. – CDT

Respuesta

20

He reproducido el error y no es posible depurar la aplicación. La única forma que he encontrado para solucionar este problema ha sido: vaya a "ventana-> Preferencias-> Java-> Depurar" y deshabilite la "suspensión de la ejecución de excepciones no detectadas"

Ahora es posible depurar la aplicación y el depurador se detiene en los puntos de interrupción del usuario.

+0

respuesta más grande, gracias. – MJM

1

La única razón para romper es cuando se golpea un punto de interrupción. MyEclipse (o eclipse) no agrega ningún punto de interrupción. Le sugiero que vuelva a depurar la aplicación y, cuando se rompe en sun.misc.URLClassPath, vaya a la pestaña Puntos de interrupción en la perspectiva de depuración e inspeccione todos los puntos de interrupción que haya establecido. Si hace doble clic en cada punto de interrupción, debería llevarlo al archivo fuente relevante. Con suerte, puede averiguar cómo llegó el punto de interrupción, pero para eliminar un punto de interrupción, haga clic con el botón derecho en el punto de corte y seleccione Eliminar.

Además, tenga en cuenta que, de forma predeterminada, eclipse se dividirá en excepciones no detectadas (aunque no parece que ese sea su problema). Esto se puede modificar yendo a las preferencias de depuración, Ventana-> Java-> Depurar.

+0

Lo hago, pero no existe ningún punto de interrupción en la pestaña 'Debug'. – MJM

+0

¿Está diciendo que la pestaña Punto de interrupción, en la perspectiva de depuración, no tiene puntos de interrupción? ¿Cuál es la línea justo arriba del rastro de la pila? Tiene la razón de la suspensión y dirá algo así como "Hilo [principal] (Suspendido (punto de interrupción en la línea 581 en Blah))". –

+0

Sí, en la pestaña 'punto de interrupción' no existe ninguna fila. Escribí rastro de depuración en la pregunta original, pero muestran lo siguiente: 'Tema [principal] (suspendido (FileNotFoundException excepción)) \t \t URLClassPath $ JarLoader.getJarFile (URL) de la línea: 641 \t \t URLClassPath $ JarLoader.access $ 600 (URLClassPath $ JarLoader, URL) de la línea: 538 \t \t URLClassPath $ JarLoader $ 1.run() línea: 605 \t \t AccessController.doPrivileged (PrivilegedExceptionAction ) línea: no disponible [método nativo] \t \t URLClassPath $ JarLoader.ensureOpen() ' – MJM

0

solución: en estado de debuging sólo la búsqueda de puntos de ruptura de ventanas> en prespectiva-depuración y desactive [lugares] Opciones de parados.

Cuestiones relacionadas