Estoy depurando problemas de Gradle en Android Studio y veo referencias a "Ejecutar sincronización de Gradle", pero no estoy seguro de cómo ejecutar este comando.
¿Cómo ejecuto "Gradle sync" desde Android Studio o Mac terminal?
Estoy depurando problemas de Gradle en Android Studio y veo referencias a "Ejecutar sincronización de Gradle", pero no estoy seguro de cómo ejecutar este comando.
¿Cómo ejecuto "Gradle sync" desde Android Studio o Mac terminal?
Respuestas:
Android Studio debería tener este botón en la barra de herramientas marcada "Sincronizar proyecto con archivos Gradle"
EDITAR: No sé cuándo se cambió, pero ahora se ve así:
EDITAR: así es como se ve en 3.3.1
O yendo a Archivo -> Sincronizar proyecto con archivos Gradle desde la barra de menú.
ADVERTENCIA : el --recompile-scripts
comando ha quedado en desuso desde gradle
la versión 5.0. Para verificar su gradle
versión, ejecute gradle -v
.
./gradlew --recompile-scripts
hará una sincronización sin construir nada.
Alternativamente, con línea de comando en su proyecto raíz
./gradlew build
Se sincronizará y creará su aplicación, y tomará más tiempo que solo una sincronización Gradle
Para ver todas las tareas de gradle disponibles, use ./gradlew tasks
En Android Studio 3.3 está aquí:
De acuerdo con la respuesta https://stackoverflow.com/a/49576954/2914140 en Android Studio 3.1 , está aquí:
Este comando se mueve a File > Sync Project with Gradle Files
.
Los amantes del atajo de teclado pueden agregar un atajo para ejecutar manualmente la sincronización de Gradle yendo a Archivo -> Configuración -> Mapa de teclas -> Complementos -> Soporte de Android -> Sincronizar proyecto con archivos de Gradle (haga clic derecho sobre él para agregar un atajo de teclado) -> Aplicar - > OK y ya está. Elija cualquier tecla conveniente como acceso directo de sincronización de Gradle que no entre en conflicto con ninguna otra tecla de acceso directo (he elegido Shift + 5 como mi tecla de sincronización de Gradle), así que cuando quiera ejecutar la sincronización de Gradle manualmente, simplemente presione esta tecla de acceso directo del teclado.
Supongo que se refiere a Herramientas> Android> "Sincronizar proyecto con archivos Gradle" desde el menú principal de Android Studio.
gradle --recompile-scripts
parece hacer una sincronización sin construir nada. puedes habilitar la construcción automática al
gradle --recompile-scripts --continuous
Consulte los documentos para obtener más información:
https://docs.gradle.org/current/userguide/gradle_command_line.html
Atajo (Ubuntu, Windows):
Ctrl + F5
Sincronizará el proyecto con los archivos de Gradle.
Creo que ./gradlew tasks
es lo mismo con Android studio sync
. ¿Por qué? Te lo explicaré.
Me encuentro con un problema cuando pruebo el informe de cobertura de jacoco. Cuando ejecuto ./gradlew clean :Test:testDebugUnitTest
directamente en la línea de comando, aparece el error.
Error opening zip file or JAR manifest missing : build/tmp/expandedArchives/org.jacoco.agent-0.8.2.jar_5bdiis3s7lm1rcnv0gawjjfxc/jacocoagent.jar
Sin embargo, si hago clic en la sincronización de Android Studio en primer lugar, funciona bien. Porque build/../jacocoagent.jar
aparecen de forma natural. No sé por qué, tal vez hay un error en el complemento de jacoco. La unidad que encuentro funcionando también .gradlew tasks
hace que el frasco aparezca. Entonces puedo obtener el mismo resultado en el script gralde.
Además, gradle --recompile-scripts
no funciona para el problema.
Tengo un problema, es posible que la prueba de limpieza de gradlew no sea igual a ADT build clean. Y ahora estoy luchando por arreglarlo.
Esto es lo que obtuve: configuré un configProductID = 11111 desde mi gradle.properties, desde mi build.gradle, agregué
resValue "string", "ProductID", configProductID
Si hago una compilación limpia desde ADT, se puede generar el recurso R.string.ProductID. Entonces puedo hacer el siguiente comando con éxito.
gradlew assembleDebug
Pero, como estoy tratando de configurar el servidor de compilación, no quiero la ayuda de ADT IDE, así que necesito evitar usar ADT build clean. Aquí viene mi problema. Ahora cambio mi nombre de recurso de "ProductID" a "myProductID", hago:
gradlew clean
Me sale un error
PS D:\work\wctposdemo> .\gradlew.bat clean
FAILURE: Build failed with an exception.
* Where:
Build file 'D:\work\wctposdemo\app\build.gradle'
* What went wrong:
Could not compile build file 'D:\work\wctposdemo\app\build.gradle'.
> startup failed:
General error during semantic analysis: Unsupported class file major version 57
Si lo intento con:
.\gradlew.bat --recompile-scripts
Acabo de recibir un error de
Unknown command-line option '--recompile-scripts'.
Cualquiera quiere usar la línea de comando para sincronizar proyectos con archivos gradle, tenga en cuenta:
Desde Gradle 5.0,
La opción de línea de comandos --recompile-scripts ha sido eliminada.
https://docs.gradle.org/current/userguide/command_line_interface.html https://github.com/gradle/gradle/issues/1425