Kotlin + Gradle Unresolved Reference - программирование
Подтвердить что ты не робот

Kotlin + Gradle Unresolved Reference

По этому вопросу я пытаюсь настроить следующую структуру проекта

project/
   settings.gradle
   projectB/  # some common code (using spring-boot)
       build.gradle
       com/
          foo/
             bar/...
   projectA/  # an android app
       build.gradle
       com/
          foo/
             baz/...

settings.gradle выглядит

rootProject.name = "project"
include ":projectB"
project(":projectB").projectDir = new File(rootDir, './projectB')
include ":projectA"
project(":projectA").projectDir = new File(rootDir, './projectA')

и в projectA/build.gradle меня есть

dependencies {
    implementation project(":projectB")
}

Android Stuido кажется счастливым и обеспечит завершение кода и поиск кода в projectB в projectA. Однако компиляция не выполняется с ошибкой

Unsresolved reference: bar

на строке, где я пытаюсь import com.foo.bar.whatever.

Я пробовал несколько различных изменений в различных файлах градиента, но ничто не исправило эту ошибку.

В чем проблема с этой настройкой и как ее можно решить?

Спасибо

4b9b3361

Ответ 1

в Android Studio и IntelliJ IDE лучше определить их как "модули".

например. с settings.gradle gradle:

include ":projectA", ":projectB"
rootProject.name = "project"

со структурой каталогов:

project/
   settings.gradle
   projectB/  # common code
       build.gradle
       src/
          test/
          debug/
          main/
             res/
             assets/
             java/
             kotlin/
                com/
                   foo/
                      bar/...


   projectA/  # android app
       build.gradle
       src/
          test/
          debug/
          main/
             res/
             assets/
             java/
             kotlin/
                com/
                   foo/
                      baz/...

когда намеревается использовать другую структуру каталогов, есть изменение конфигурации sourceSets.