Как добавить исходные файлы в проект android studio?

В настоящее время я пытаюсь получить огромный проект Android Studio для компиляции. Моя проблема заключается в том, что я зависим от классов java в другом репозитории git. Я исправил это, добавив РЕПО в качестве подмодуля. Я абсолютный новичок в gradle, поэтому мой подход состоял в том, чтобы добавить root, где то .файлы java расположены в виде набора источников:

  sourceSets {

    main.java.srcDirs += '../../ROOT-OF-SOURCE-FILES/'
}

Это решает зависимости. В «ROOT-of-SOURCE-FILES» есть куча файлов, Не необходимых для моего проекта, и это также заставляет gradle не строить, потому что нет также файлов android.
Следующее, что я попытался, это указать на конкретные папки, от которых я зависит, но тогда он говорит: «путь к файлу не соответствует имени пакета»

Мой вопрос заключается в том, как я могу добавить классы (включая их зависимости), которые мне нужны, или как я могу исключить то, что мне не нужно (я также пытался исключить с помощью gradle, но это не сработало).

1 ответ

  1. Можно использовать excludeдля игнорирования частей исходного дерева, см. https://discuss.gradle.org/t/how-can-i-exclude-certain-java-files-from-being-compiled/5287:

    sourceSets {
      main {
        java {
          srcDirs 'main/src'
          exclude '**/package2/**'
        }
      }
    }
    

    Другой вариант — создать символическую ссылку на ту ветку, которая вам действительно нужна для Android Studio, например

    src/main/
            package1
            package3
            package2
    
    linked/package1 -> src/main/package1
    

    и

    sourceSets {
      main {
        java {
          srcDirs 'linked'
        }
      }
    }