Android Studio如何手动运行gradle sync?

时间:2015-04-10 15:29:44

标签: android android-studio gradle sync

我在Android Studio中调试Gradle问题并看到“运行gradle sync”的引用,但我不知道如何运行此命令。

如何从Android工作室或Mac终端运行“Gradle sync”?

11 个答案:

答案 0 :(得分:118)

Android工作室应在工具栏中标记为“使用Gradle文件同步项目”

编辑:我不知道它何时被更改但现在看起来像这样:

enter image description here

编辑:这就是它在3.3.1上的样子 enter image description here
或者转到文件 - >从菜单栏同步项目与Gradle文件

答案 1 :(得分:26)

使用根项目中的命令行

./gradlew build

它将同步并构建您的应用

要查看所有可用的gradle任务,请使用./gradlew tasks

答案 2 :(得分:23)

键盘快捷方式爱好者可以通过转到文件 - >手动添加用于手动运行gradle sync的快捷方式。设置 - >键盘图 - >插件 - > Android支持 - >使用gradle文件同步项目(右键单击它以添加键盘快捷键) - >申请 - >好的,你完成了。 Gradle Sync keyboard shortcut选择任何方便的键作为您的gradle同步快捷键,它不会与任何其他快捷键冲突,(我已选择Shift + 5作为我的gradle同步键),因此,当您想要手动运行gradle sync时,请按下此键键盘快捷键。

答案 3 :(得分:23)

在Android Studio 3.3 中,它位于:

enter image description here

根据Android Studio 3.1 中的答案https://stackoverflow.com/a/49576954/2914140,它位于:

enter image description here

此命令已移至File > Sync Project with Gradle Files

enter image description here

答案 4 :(得分:13)

我认为它指的是工具> Android> "将项目与Gradle文件同步"来自Android Studio主菜单。

答案 5 :(得分:5)

gradle --recompile-scripts

似乎在没有构建任何内容的情况下进行同步。 您可以通过

启用自动构建
gradle --recompile-scripts --continuous

请参阅文档了解更多信息:

https://docs.gradle.org/current/userguide/gradle_command_line.html

答案 6 :(得分:2)

快捷方式(Ubuntu,Windows):

Ctrl + F5

将项目与Gradle文件同步。

答案 7 :(得分:1)

任何人都想使用命令行将项目与gradle文件同步,请注意:

从Gradle 5.0开始,

--recompile-scripts命令行选项已被删除。

答案 8 :(得分:0)

我认为./gradlew tasksAndroid studio sync相同。为什么?我会解释的。

我在测试jacoco覆盖率报告时遇到问题。当我直接在命令行中运行./gradlew clean :Test:testDebugUnitTest时,出现错误。

Error opening zip file or JAR manifest missing : build/tmp/expandedArchives/org.jacoco.agent-0.8.2.jar_5bdiis3s7lm1rcnv0gawjjfxc/jacocoagent.jar

但是,如果我先单击android studio sync,它将运行正常。因为build/../jacocoagent.jar自然出现。 我不知道为什么,也许jacoco插件中有错误。我发现运行.gradlew tasks的单元也会使jar出现。这样我就可以在gralde脚本中得到相同的结果。

此外,gradle --recompile-scripts不能解决问题。

答案 9 :(得分:0)

我遇到麻烦,可能证明gradlew clean不等于ADT build clean。现在,我正在努力修复它。

这是我得到的: 我从gradle.properties中设置了configProductID = 11111,在build.gradle中添加了

resValue "string", "ProductID", configProductID

如果我从ADT进行构建清理,则可以生成资源R.string.ProductID。这样我就可以成功执行波纹管命令了。

gradlew assembleDebug

但是,当我尝试设置构建服务器时,我不需要ADT IDE的帮助,因此我需要避免使用ADT build clean。这是我的问题。 现在,我将资源名称从“ ProductID”更改为“ myProductID”,我这样做:

gradlew clean

我收到错误消息

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

如果我尝试:

.\gradlew.bat --recompile-scripts

我刚得到

的错误
Unknown command-line option '--recompile-scripts'.

答案 10 :(得分:0)

来自终端:

gradle prepareKotlinBuildScriptModel

注意:您可以通过检查“构建”选项卡来查看 android studio 正在做什么。里面会有差异窗口。一个应该是“同步”