文档http://www.jetbrains.com/idea/help/rebuilding-project.html?search=reb仅告诉我如何重建项目。
我不知道重建项目(Menu --> Build --> Rebuild Project
)意味着什么,它会清除所有编辑缓存吗?我运行重建项目后发现项目的大小减少了吗?
在Android Studio中清除项目意味着什么?
答案 0 :(得分:4)
在Android Studio中,构建菜单中的几乎每个语音都映射到一个(可能不止一个)gradle动作,其中Gradle是android的官方构建系统。特别是,当您清理项目时,您正在从应用程序模块内的build文件夹中删除一些文件,并且当您选择rebuild时,相当于执行gradle clean和build。 有关该主题的更多信息,我建议您使用Udacity这个课程,您可以免费查看。它教你gradle以及它如何与android studio集成。
https://www.udacity.com/course/gradle-for-android-and-java--ud867
答案 1 :(得分:0)
Android App是一个使用com.android.application
插件的Gradle项目。单击“重建”按钮,“清除”按钮或运行按钮时。它将运行一系列命令。请注意,并非所有命令都是Gradle任务。例如,运行和调试按钮将在场景后面运行adb
。
在Rebuild
按钮中,您正在运行多个Gradle任务。您可以在Android Studio的右下角看到它。
在这种情况下,Android Studio将运行以下Gradle任务:
clean, :app:generateDebugSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:generateDebugAndroidTestSources, :app:compileDebugSources, :app:compileDebugUnitTestSources, :app:compileDebugAndroidTestSources
在冒号(:)之前看到的是模块名称。 app:generateDebugSource
将在generateDebugSource
模块上运行app
任务。
但是如果你有多个模块会发生什么?
显然,Android Studio将在每个模块上运行这些任务。
Executing tasks: [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:compileDebugSources, :app:compileDebugAndroidTestSources, :app:compileDebugUnitTestSources, :myandroidlib:generateDebugSources, :myandroidlib:mockableAndroidJar, :myandroidlib:prepareDebugUnitTestDependencies, :myandroidlib:generateDebugAndroidTestSources, :myandroidlib:compileDebugSources, :myandroidlib:compileDebugUnitTestSources, :myandroidlib:compileDebugAndroidTestSources]
它会清除所有编辑缓存吗?我发现项目的规模缩小了 我运行重建项目后?
它将清除build
文件夹中的文件。通常,这不包含在项目中(在.gitignore
中添加)。 build
文件夹将包含您的最终apk
,R
文件,报告文件(如lint / JUnit测试报告)和生成的类(来自Dagger / Retrofit)。这就是为什么它会减少你的项目的规模。
BTW,在Android工作室清除项目有什么意义?
如果您clear project
的意思是clean project
。
Android Studio将运行以下任务,从根本上删除build
文件夹。
Executing tasks: [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :myandroidlib:generateDebugSources, :myandroidlib:mockableAndroidJar, :myandroidlib:prepareDebugUnitTestDependencies, :myandroidlib:generateDebugAndroidTestSources]