Jetpack Compose: не удалось установить неизвестное свойство useIR

Я пытаюсь скомпилировать Jetpack Compose для AndroidX, следуя инструкциям, доступным на файл README.md с Android Studio 3.5 Beta 1, и я получаю следующую ошибку от Gradle:

ОШИБКА: не удалось установить неизвестное свойство 'useIR' для задачи ': ui-android-view: compileDebugKotlin' типа org.jetbrains.kotlin.gradle.tasks.KotlinCompile.

Чтобы получить код, я выполнил инструкции, описанные в разделе Проверка кода. Затем я импортировал проект в Android Studio 3.5 Beta 1 в macOS Mojave 10.4, и при первом запуске Gradle я получаю сообщение об ошибке.


person RobertoAllende    schedule 10.05.2019    source источник


Ответы (3)


По состоянию на май 2019 года Jetpack Compose все еще находится на стадии предварительной альфа-версии и использует экспериментальные версии Kotlin и AndroidStudio. Похоже, вы скачали копию AS 3.5 Beta, но вам нужно запустить ее с связанной версией studiow, которая поддерживает создание Jetpack, как описано здесь: https://android.googlesource.com/platform/frameworks/support/#using-android-studio

person Jim    schedule 10.05.2019

Запускайте ./studiow внутрь frameworks/support/ui, а не внутрь frameworks/support

Они используют разные версии Android Studio для каждого подпроекта.

См. support / buildSrc /studio_versions.properties и support / ui / studio_versions.properties. studiow использует эти файлы, чтобы решить, какую версию Android Studio использовать.

фрагмент кода из студии:

function runStudioMac() {
  appPath="$(findStudioMacAppPath)"
  echo "open ${appPath}"
  env STUDIO_PROPERTIES="${projectDir}/idea.properties" \
      STUDIO_VM_OPTIONS="${projectDir}/../development/studio/studio.vmoptions" \
      KOTLIN_OVERRIDE="1.3.30-compose-20190503" \
      open -a "${appPath}" "${projectDir}"
}

Если вы запустите Android Studio непосредственно из ui/studio/android-studio-idea-xx/Android studio.app, будет выдана ошибка сборки, поскольку свойства загружаются только при запуске через ui/studiow.

+ И не используйте git pull прямо из Android Studio. Используйте repo sync -j8 -c в корневом каталоге для синхронизации. У меня возникли проблемы, когда я это сделал.

person Tura    schedule 15.06.2019

В Google I / O Ромен Гай сказал, что JetpackCompose находится на стадии разработки. Даже альфа. Я тоже столкнулся с этой проблемой из-за неправильной загрузки, думаю, вы тоже. Я написал пошаговую статью «Как установить JetpackCompose» на вашу машину разработки. Ссылка на статью

person Halil ÖZCAN    schedule 11.05.2019