一些背景信息:
我正在为一个包含Android应用程序的大型项目使用MSBuild进行持续集成流水线的工作。该应用程序包括一些需要定期集成到项目中的自动生成的文件。通常,这是通过手动复制它们并在Android Studio中选择“构建-重建项目”来完成的。
由于该项目还使用AndroidAnnotations,因此必须执行此步骤以生成编译时的类。
问题:
我没有找到有关在Android Studio中选择“重建项目”时运行的内容的任何文档。
我尝试过的方法:
以及:
但是这里的文档没有提到重建命令,而且6周的优达学城课程也不是一个有用的资源。
当我点击“重新构建项目”时,Android Studio事件日志会显示:
执行任务:[clean,:app:generateDevelopmentDebugSources,:app:generateDevelopmentDebugAndroidTestSources,:app:prepareDevelopmentDebugUnitTestDependencies,:app:mockableAndroidJar,:app:compileDevelopmentDebugSources,:app:compileDevelopmentDebugAndroidTestSources,:app:compileDevelopmentDebugUnitTestSources]
我在命令行中运行了如下命令:
gradlew.bat clean :app:generateDevelopmentDebugSources :app:generateDevelopmentDebugAndroidTestSources :app:prepareDevelopmentDebugUnitTestDependencies :app:mockableAndroidJar :app:compileDevelopmentDebugSources :app:compileDevelopmentDebugAndroidTestSources :app:compileDevelopmentDebugUnitTestSources
该命令执行,但是构建完成后出现了几百个错误,当您尝试编译或清除而没有首先运行重建时,这些错误也会发生。显然,此命令不完整。
当我查看Android Studio中的Gradle控制台时,我看到运行了几十个目标,但我不敢复制粘贴它们,因为我不知道对项目进行小改动会导致运行不同的目标。 我已将我的问题缩小到:app:compileDevelopmentDebugUnitTestJavaWithJavac
目标。 这个目标需要Gradle控制台中列出的其他目标之一,但我不知道是哪一个。那些目标一定是从某个地方来的,但是从哪里来呢?
简而言之:
如何在命令行中执行“重新构建项目”时做到与Android Studio相同的所有操作?