Cómo agregar Stacktrace o la opción de depuración al crear un proyecto de Android Studio

142

Intenté investigar el error de compilación del proyecto en la salida de la consola de la siguiente manera:

:myapp:processDebugResources FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
...
...

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Sospecho que tiene algo que ver con el error de recurso no encontrado. Mi pregunta es, en el nivel IDE, ¿cómo puedo agregar --stacktraceu --debugopción para que pueda producir más información para que pueda depurar?

Neoh
fuente

Respuestas:

207

Puede usar la GUI para agregar estos indicadores de línea de comandos de gradle desde

File > Settings > Compiler (Gradle-based Android Project)

Para usuarios de MacOS, está aquí

Android Studio > Preferences > Build, Execution, Deployment > Compiler

como este (agregar --stacktraceo --debug)

ingrese la descripción de la imagen aquí

(Tenga en cuenta que la captura de pantalla es anterior a 0.8.10, la opción ya no está en la Compiler > Gradlesección, ahora está en una sección separada llamada Compiler (Gradle-based Android Project))

pyus13
fuente
2
Esto se fue en 0.8.12. Alguien sabe mas?
RMN
44
Tomaron la opción del compilador en la raíz, creo, revisaron en Android Studio 0.8.10. Ahora estudio llamándolo Compilador (Proyecto Android basado en Gradle). Verifique una vez y actualice.
pyus13
2
Creo que entiendo lo que estás diciendo, pero estoy hablando de otra cosa. En la sección Gradle de la "Configuración del proyecto" han eliminado el campo "Opciones de línea de comandos". Por lo tanto, no hay lugar para agregar banderas a Gradle. (Sin embargo, el campo "Opciones de VM" sigue ahí).
RMN
2
@nmr: No se refiera a "Gradle". En su lugar, marque el "Compilador (Proyectos de Android basados ​​en Gradle)". Allí encontrará las "Opciones de línea de comando".
Behnam
66
En Android Studio 1.2.2 (en Windows) es File > Settings > Build, Execution, Deployment > Compilerdonde puedes agregar las banderas Command-line Options:.
chRyNaN
38

En la Macversión de Android Studio Beta 1.2, está bajo

Android Studio->preferences->Build, Execution, Deployment->Compiler

jpa57
fuente
3
Esta respuesta también es correcta a partir de Android Studio 2.0.
Will Vanderhoef
1
En las últimas versiones de AS (2.2 y 2.3) para ver la opción Compilador, debe estar fuera del proyecto abierto, vaya a AS comenzar (donde el proyecto reciente está visible) y haga clic en Configurar -> Preferencias-> Compilación, Ejecución, Implementación. De lo contrario, el compilador no es visible
Stoycho Andreev
24

En Android Studios 2.1.1, las opciones de la línea de comandos se encuentran en "Compilación, ejecución, implementación"> "Compilador"

ingrese la descripción de la imagen aquí

Angel Koh
fuente
2
también puedes agregar --scan
Kirill Karmazin
13

Lo que uso para fines de depuración es ejecutar la tarea gradle con stacktrace directamente en la terminal. Entonces no afecta a sus compilaciones normales.

Desde el directorio raíz de su proyecto, a través de la terminal, puede usar:

./gradlew assembleMyBuild --stacktrace
Francois
fuente
7

Para agregar un stacktrace, haga clic en Gradle en el lado derecho de la pantalla del proyecto de Android;

  1. Haga clic en el ícono de configuración; esto abrirá la página de configuración,

  2. Luego haga clic en el compilador

  3. Luego agregue el comando --stacktraceo --debugcomo se muestra;

  4. Ejecute la aplicación nuevamente para obtener el informe gradle.

usuario1551978
fuente
¿Qué pasa si se ignoran estas opciones? ¿Vamos a limpiar un poco de caché?
myoan
6

(editado en diciembre de 2018: Android Studio 3.2.1 también en Mac)

Para Android Studio 3.1.3 en una Mac, estaba bajo

Android Studio -> Preferencias -> Compilación, ejecución, implementación -> Compilador

y luego, para ver el seguimiento de la pila, presione este botón

botón para mostrar el seguimiento de la pila

auspicioso99
fuente
Seguí los pasos dados en las soluciones a continuación, pero aún recibo el mensaje "Intentar: ejecutar con la opción --stacktrace para obtener el seguimiento de la pila. Ejecutar con la opción --info o --debug para obtener más resultados de registro. Ejecutar con "escanear para obtener información completa".
Nishita
@Nishita, ¿escribiste --stacktracey / o --infoy / o --debugy / o --scanen las opciones de la línea de comandos?
auspicious99
1
Sí, lo hice. Habilitarlo en la configuración de preferencias no ayudó. Tuve que ejecutar manualmente el comando en la terminal para ver el stacktrace.
Nishita
2

Para Android Studio 3.1.3 estaba bajo

Archivo -> Configuración -> Compilación, ejecución, implementación -> Compilador

gmetax
fuente
1

mi solución es esta:

configurations.all {
    resolutionStrategy {
        force 'com.android.support:support-v4:27.1.0'
    }
}
Fredy sanchez .m
fuente
0

Para poder ejecutar opciones como --stacktracedentro de un comando gradle, debe ponerlo al principio, como:

./gradlew --stacktrace assembleMyBuild

Anthony Cannon
fuente
0

En caso de que use fastlane, se pueden pasar banderas adicionales con

gradle(
   ...
   flags: "{your flags}"
)

Más información aquí.

Vladyslav Zavalykhatko
fuente
0

mi solución es esta:

cd android

y entonces:

./gradlew assembleMyBuild --stacktrace
Kourosh Neyestani
fuente
-1

Para aumentar el almacenamiento dinámico máximo: haga clic para abrir su Android Studio, mire las imágenes a continuación. Paso a paso. ANDROID STUDIO v2.1.2

Haga clic para navegar a Configuración desde Configurar o IR A CONFIGURACIÓN DE ARCHIVO en la parte superior de Android Studio.

ingrese la descripción de la imagen aquí

verifique también los compiladores de Android desde el enlace para confirmar si también cambia si no aumenta al mismo tamaño que modifica desde el enlace del compilador.

Nota: puede aumentar el tamaño en función de la capacidad de su memoria y recuerde que esta configuración se basa en Android Studio v2.1.2

Umar Pharouk
fuente
55
¿Es esta la pregunta correcta para esta respuesta? Parece que pertenece a otra parte.
Acapulco