我正在调试Android Studio中的Gradle问题,并看到“运行Gradle同步”的引用,但我不确定如何运行这个命令。
我如何运行“Gradle同步”从Android工作室或Mac终端?
我正在调试Android Studio中的Gradle问题,并看到“运行Gradle同步”的引用,但我不确定如何运行这个命令。
我如何运行“Gradle同步”从Android工作室或Mac终端?
Android studio应该在工具栏中有这个按钮,标记为“同步项目与Gradle文件”
编辑:我不知道什么时候改的,但现在看起来是这样的:
编辑:这是它在3.3.1中的样子 或者从菜单栏选择文件->与Gradle文件同步项目。
警告:——recompile-scripts命令自gradle 5.0版本起已弃用。 要检查gradle版本,运行gradle -v。
./gradlew --recompile-scripts
它将在不构建任何东西的情况下进行同步。
或者,在根项目中使用命令行
。/ gradlew构建
它会同步并构建你的应用,比Gradle同步花费的时间要长
要查看所有可用的gradle任务,请使用./gradlew tasks
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
似乎不需要构建任何东西就能进行同步。 您可以通过
gradle --recompile-scripts --continuous
更多信息请参考文档:
https://docs.gradle.org/current/userguide/gradle_command_line.html
在Android Studio 3.3中,它在这里:
根据Android Studio 3.1中的答案https://stackoverflow.com/a/49576954/2914140,它在这里:
该命令被移动到文件>同步项目与Gradle文件。
我认为./gradlew tasks和Android 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/../ jacocoagulation .jar看起来很自然。 我不知道为什么,可能是jacoco插件有bug。单元我发现运行.gradlew任务使罐子显示以及。所以我可以在gradde脚本中得到相同的结果。
此外,gradle—recompile-scripts也不能解决这个问题。
我有一个麻烦可以证明gradlew干净不等于ADT建造干净。现在我正在努力把它修好。
以下是我得到的: 我设置了一个configProductID=11111从我的gradle。属性,从我的构建。我补充道
resValue "string", "ProductID", configProductID
如果我从ADT进行构建清理,可以生成资源R.string.ProductID。然后我就可以成功地做咆哮命令了。
gradlew assembleDebug
但是,当我试图设置构建服务器,我不想从ADT IDE的帮助,所以我需要避免使用ADT构建清洁。我的问题来了。 现在我把我的资源名称从“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'.
任何想要使用命令行与gradle文件同步的项目,请注意:
从Gradle 5.0开始,
——recompile-scripts命令行选项已被移除。
https://docs.gradle.org/5.0/userguide/upgrading_version_4.html#potential_breaking_changes https://docs.gradle.org/current/userguide/command_line_interface.html https://github.com/gradle/gradle/issues/1425
从终端:
gradle prepareKotlinBuildScriptModel
注意:你可以通过查看“Build”选项卡看到android studio正在做什么。里面会有不同的窗口。一个应该是“同步”