Run app и Rebuild запускают разные команды

В моем проекте у меня 2 модуля: app и library. Когда я запускаю Rebuild в Android Studio 3.0.1, запускаются 3 задачи gradle:

  • clean
  • :library:assembleDebug
  • :app:assembleDebug.

Но если я запускаю Run app после Clean, запускается только :app:assembleDebug. Почему :library:assembleDebug не нужен? Разве Run app не должен запускать команды Rebuild без clean?

Мой Clean запускает следующее:

  • чистый
  • : библиотека: generateDebugSources
  • : library: generateDebugAntroidTestSources
  • : библиотека: mockableAndroidJar
  • : app: generateDebugSources
  • : app: generateDebugAntroidTestSources
  • : app: mockableAndroidJar
1
0
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Действия Rebuild и Run app запускают разные задачи gradle.

Задача cleantype=delete) удаляет каталог сборки когда, который она запускает. При запуске Run app задача app:clean будет запущена, в то время как элемент Rebuild вызывает задачу clean. В первом случае не нужно собирать заново остальные модули, в вашем случае модуль library.

Но разве задача clean не удаляет и модули? Если нет, как следует удалять модули?

John M. 22.03.2018 12:27

lib: clean например. Но зачем вам чистить lib при создании приложения?

Gabriele Mariotti 22.03.2018 12:48

Другие вопросы по теме