No se puede Depurar Proyectos de Biblioteca con ADT v14-Fuente No encontrada


Desde que actualizé mis proyectos actuales para usar las nuevas herramientas R14 en Eclipse, ahora no puedo depurar ningún código que exista en mis proyectos de biblioteca.

Cuando llego a un punto de interrupción en el código de mi proyecto de biblioteca, en lugar de Eclipse abriendo el archivo fuente original, abre la copia de solo lectura del archivo fuente contenido dentro del JAR con el mensaje "Fuente no encontrada".

He buscado una solución para esto, pero aún no he encontrado nada. ¿Alguien más tiene alguna sugerencia? Es un dolor no ser capaz de depurar.

EDITAR

El problema ha vuelto y ya no puedo depurar. No he cambiado ninguna configuración del proyecto ni nada. Muy frustrante.

Author: hooked82, 2011-10-26

7 answers

Después de tener este problema también y hacer un poco de investigación, me encontré con este hilo y otro que me avisó. Ya me estaba tirando del pelo.

Resulta que el problema es con el orden de construcción de sus proyectos (el mío era de todos modos). Dado que ADT / SDK v14 cambió la forma en que se hace referencia a los proyectos de la biblioteca, el orden de compilación debe ser correcto. Asegúrate de que todas las bibliotecas que usa tu aplicación se compilen primero. Acabo de mover las carpetas " src "y" gen " para cada uno de mis proyectos a la parte inferior y ahora se construye la biblioteca primero y soy capaz de depurar y ver el origen de mis archivos de biblioteca a través del proyecto principal.

En caso de que alguien no sepa dónde hacer esto, en Eclipse, haga clic derecho en su proyecto y "Construir ruta" y luego haga clic en "Configurar ruta de compilación". Luego, en la pestaña" Ordenar y exportar", mueva las dos carpetas de su proyecto a la parte inferior de la lista debajo de sus bibliotecas. Hice esto para todos mis proyectos y los proyectos de la biblioteca.

Usted también puede hacerlo globalmente en Eclipse desde Windows- > Preferencias- > General- > Espacio de trabajo- > Orden de compilación y mover sus proyectos de biblioteca a la parte superior. Creo que el orden de construcción definido en cada proyecto anulará esto, por lo que es posible que desee hacerlo en ambos lugares para resolver el problema ahora y para proyectos futuros.

Espero que esto sea útil para usted y cualquier otra persona que experimente este molesto problema. :)

Gracias, Ad

 17
Author: ssuperz28,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-10-27 21:08:50

Probé todo lo anterior y no funcionó para mí, sin embargo, la solución detallada aquí lo hizo.

Http://code.google.com/p/android/issues/detail?id=20731

  1. Inicie la depuración y ejecute hasta que llegue a un punto de interrupción (y obtenga precisamente un.archivo de clase en lugar del .java que le gustaría tener)
  2. Haga clic con el botón derecho en la vista de depuración de la perspectiva de depuración (por ejemplo, en la pila de llamadas) y elija "Editar ruta de búsqueda de fuente"
  3. Añadir todos sus proyectos por encima de "Default", a través de " Add...">"Proyecto Java" > "Seleccionar todo"

(Estoy usando ADT 15.0.2 vista previa de http://tools.android.com/download )

 44
Author: Kuffs,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-01-06 00:02:37

Hoy tuve el mismo problema en un proyecto. El proyecto consiste en una aplicación que tiene dos dependencias de biblioteca. No pude ver el código durante la depuración y al usar el autocompletado cuando los métodos de sobreescritura Eclipse no pudo deducir los nombres de los argumentos adecuados.

En primer lugar, el problema se manifestó al mostrar que la carpeta 'gen' se usó como la que contenía la fuente. Para comprobar si este es el mismo problema, vaya a su proyecto de aplicación, abra las dependencias de Android y tenga un vistazo a las propiedades de las dependencias de su biblioteca. Ruta de ubicación said / libraryprojectname / gen.

Si este es también su problema, vaya a la pestaña 'Ordenar y Exportar' de cada proyecto de biblioteca y mueva el elemento 'gen' debajo del elemento 'src'. Tan pronto como hagas clic en Aceptar Eclipse funcionará un poco y cuando compruebes las propiedades de la dependencia de Android, la ruta de ubicación debería decir: / libraryprojectname / src. Abrir haga clic en la dependencia y abra cualquier clase dentro del jar. Debe mostrar el fuente.

Estoy usando ADT plugin 20.0.3 con Android SDK Tools 20.0.3 y Android SDK Platform Tools 14.

 2
Author: rob,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-31 11:03:05

Lo siguiente funcionó para mí en Eclipse Juno:

En las Propiedades del Proyecto / Ruta de Compilación de Java:

  • En la pestaña Proyectos, se han añadido mis proyectos de biblioteca.
  • En la pestaña Orden y exportación, moví mis proyectos de biblioteca a la parte superior y los revisé

No estoy seguro de si es relevante, pero Android SDK tools es rev 20.0.3 y Android SDK platform tools es 14.

Buena suerte.

 2
Author: JulianSymes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-13 15:34:21

Asumo que estás opeining proyecto de la biblioteca y allí pones brakepoint. Prueba esto: En el proyecto principal abre Proyectos de Biblioteca - >[yourlibrary.jar]- > [tu archivo.class] from Package Explorer, and then in .archivo de clase poner brakepoints. Esto funciona para mí al menos:)

 0
Author: Marcin Waśniowski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-10-27 08:56:00

A veces esto me pasa a mí. No estoy seguro de la razón, pero la forma en que resuelvo es:

Elimina el proyecto principal de eclipse. -- Closs Eclipse Delete Eliminar el archivo jar en el proyecto de la biblioteca {Abrir Eclipse Wait Esperar a que el proyecto de la biblioteca para compilar Import Importar el proyecto principal

 0
Author: Miguel Sesma,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-10-27 14:01:08

Este problema también ocurre con la versión 21 de ADT dentro de Juno. Como solución alternativa, en la vista "depurar" de la perspectiva de depuración (donde ve los hilos y los rastros de invocación de métodos), haga clic con el botón derecho y edite la ruta de búsqueda de origen.

 0
Author: Snicolas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-05 13:32:11