I'm debugging Gradle issues in Android Studio and see references to "Run gradle sync", but I'm not sure how to run this command.
How do I run "Gradle sync" from Android studio or Mac terminal?
I'm debugging Gradle issues in Android Studio and see references to "Run gradle sync", but I'm not sure how to run this command.
How do I run "Gradle sync" from Android studio or Mac terminal?
Android studio should have this button in the toolbar marked "Sync project with Gradle Files"
Or:
Or on 3.3.1:
Or in Android Studio Hedgehog with the new UI: 
OR by going to File -> Sync Project with Gradle Files from the menubar.
WARNING: --recompile-scripts command has been deprecated since gradle's version 5.0. To check your gradle version, run gradle -v.
./gradlew --recompile-scripts it will do a sync without building anything.
Alternatively, with command line in your root project
./gradlew build
It will sync and build your app, and take longer than just a Gradle sync
To see all available gradle task, use ./gradlew tasks
OR USING THE BUTTON
build, I only want to sync, I don't understand why Google would deprecate and remove --recompile-scripts without introducing an alternative ...In Android Studio 3.3 it is here:
According to the answer https://stackoverflow.com/a/49576954/2914140 in Android Studio 3.1 it is here:
This command is moved to File > Sync Project with Gradle Files.
Keyboard shortcut lovers can add a shortcut for running gradle sync manually by going to File -> Settings -> Keymap -> Plugins -> Android Support -> Sync Project with gradle files (Right click on it to add keyboard shortcut) -> Apply -> OK and you are done.
Choose any convenient key as your gradle sync shortcut which doesnot conflict with any other shortcut key, (I have choosen Shift + 5 as my gradle sync key), so next when you want to run gradle sync manually just press this keyboard shortcut key.
gradle --recompile-scripts seems to do a sync without building anything. you can enable automatic building by
gradle --recompile-scripts --continuous Please refer the docs for more info:
https://docs.gradle.org/current/userguide/gradle_command_line.html
Without considering UI:
./gradlew --refresh-dependencies or Considering Android Studio UI synchronization(only macOS):
Osascript -e 'tell application' System Events' to tell process' Android Studio 'to click menu item' Sync Project with Gradle Files' of menu 'File' of menu bar 1' Make it a gradle task in project's build.gralde file:
tasks.register('GradleSync', Exec) { commandLine 'bash', '-c', 'osascript -e \'tell application "System Events" to tell process "Android Studio" to click menu item "Sync Project with Gradle Files" of menu "File" of menu bar 1\'' } in the Terminal:
./gradlew GradleSync Shortcut (Ubuntu, Windows):
Ctrl + F5 Will sync the project with Gradle files.
From terminal:
gradle prepareKotlinBuildScriptModel NOTE: you can see what android studio is doing by inspecting the "Build" tab. There will be difference windows inside there. One should be "Sync"
I think ./gradlew tasks is same with Android studio sync. Why? I will explain it.
I meet a problem when I test jacoco coverage report. When I run ./gradlew clean :Test:testDebugUnitTest in command line directly , error appear.
Error opening zip file or JAR manifest missing : build/tmp/expandedArchives/org.jacoco.agent-0.8.2.jar_5bdiis3s7lm1rcnv0gawjjfxc/jacocoagent.jar However, if I click android studio sync firstly , it runs OK. Because the build/../jacocoagent.jar appear naturally. I dont know why, maybe there is bug in jacoco plugin. Unit I find running .gradlew tasks makes the jar appear as well. So I can get the same result in gralde script.
Besides, gradle --recompile-scripts does not work for the problem.
I have a trouble may proof gradlew clean is not equal to ADT build clean. And Now I am struggling to get it fixed.
Here is what I got: I set a configProductID=11111 from my gradle.properties, from my build.gradle, I add
resValue "string", "ProductID", configProductID If I do a build clean from ADT, the resource R.string.ProductID can be generated. Then I can do bellow command successfully.
gradlew assembleDebug But, as I am trying to setup build server, I don't want help from ADT IDE, so I need to avoid using ADT build clean. Here comes my problem. Now I change my resource name from "ProductID" to "myProductID", I do:
gradlew clean I get 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 If I try with:
.\gradlew.bat --recompile-scripts I just get error of
Unknown command-line option '--recompile-scripts'. Execute the task gradle :prepareKotlinBuildScriptModel, this is what Android Studio does when you 'Sync' a project if you're using Kotlin DSL for the gradle scrpts In Android Studio Koala(this is what I'm using currently, I don't know about other versions), you can 'Sync' your project using the shortcut Ctr + Shift + O, or navigate to Menu > File > Sync project with Gradle files
Anyone wants to use command line to sync projects with gradle files, please note:
Since Gradle 5.0,
The
--recompile-scriptscommand-line option has been removed.