Неразрешенная ссылка во время сборки при расширении Java-класса из Kotlin - PullRequest
1 голос
/ 04 ноября 2019

У меня есть проект Android, который прекрасно компилируется, когда дело доходит до классов Java, однако, когда я попытался переписать один из этих классов в Kotlin, я получил неразрешенную ссылку ошибку и больше не могу построить проект.

Класс2 расширяет класс1

Структура проекта следующая:

/src
../com
..../package
....../app
......../Class1.java
......../Class2.kt

Class1.java объявляет пакет com.package.app и то же самое дляClass2.kt. По очевидной причине Android Studio жалуется на Пакет не соответствует пути к файлу в файле Java, но неожиданно не жалуется на это в файле Kotlin.

Как я упоминал выше, когда Class2 былнаписано на Java, у меня пакет не соответствует ошибке, но это не мешает мне построить мой apk. Теперь, когда я пытаюсь использовать Kotlin, я больше не могу собрать.

Я попытался установить источник в моем файле Gradle, но это не помогло.

sourceSets {
    main {
        manifest.srcFile  'AndroidManifest.xml'
        kotlin.srcDir "src/com/package/app/"
        kotlin.setIncludes(new HashSet(['Class1.java']))
    }
}

Та же конфигурация сJava работает отлично (учитывая, что kotlin. * Заменен на java. *)

Во время некоторых исследований я нашел эту тему , которая как-то близка к моей проблеме, но, к сожалению, она не описываеткак это исправить.

Также важно отметить, что Android-студия может правильно ссылаться на расширенный класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...