【问题标题】:jetpack compose: @Preview is unresolved after updating to alpha08jetpack compose:更新到 alpha08 后,@Preview 未解决
【发布时间】:2020-12-05 08:44:44
【问题描述】:

我将撰写库从 alpha07 更新为 alpha08

version = "1.0.0-alpha08"
androidx.compose.ui:ui:$version
androidx.ui:ui-tooling:$version

但在那之后androidx.ui.tooling.preview.Preview 未解决

【问题讨论】:

    标签: android android-jetpack-compose


    【解决方案1】:

    查看 Jetpack compose 中的 release note of alpha08,您会注意到 ui-tooling 已从 androidx.ui 移动到 androidx.compose.ui

    你需要做的改变:

    dependencies {
        // New dependencies
        implementation "androidx.compose.ui:ui-tooling:1.0.0-alpha08"
        testImplementation "androidx.compose.ui:ui-test:1.0.0-alpha08"
    
        // Old dependencies
        implementation "androidx.ui:ui-tooling:1.0.0-alpha07"
        testImplementation "androidx.ui:ui-test:1.0.0-alpha07"
    }
    

    【讨论】:

    • 你应该使用:testImplementation "androidx.compose.ui:ui-test:1.0.0-alpha08" 而不是实现
    【解决方案2】:

    你的意思是使用:

    dependencies {
    
    // New dependencies
    implementation 'androidx.compose.ui:ui-tooling:1.0.0-beta02"
    testImplementation "androidx.compose.ui:ui-test:1.0.0-beta02"
    
    // Old dependencies
    implementation "androidx.ui:ui-tooling:1.0.0-alpha07"
    testImplementation "androidx.ui:ui-test:1.0.0-alpha07"
    }
    

    并使用

    android {
    
    //....
    
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
        useIR = true
    }
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerVersion "1.4.31"
        kotlinCompilerExtensionVersion "1.0.0-beta02"
    }
    }
    
    
    tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach 
    {
    kotlinOptions {
        jvmTarget = "1.8"
    }
     
    

    但这并不能解决我的问题。

    顶级等级:

    dependencies {
        classpath "com.android.tools.build:gradle:4.2.0-alpha16"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31"
     }
    

    我暂时没有找到使用最后一个 compose 依赖版本的解决方案。

    【讨论】:

      【解决方案3】:

      通过以下方式解决了问题:

      • 使用最新的 Android Studio Artic Fox (Canary build) 而不是任何其他金丝雀旧 IDE。

      • 使用 Android studio Artic Fox Embeded JDK(openjdk 版本“11.0.8”)或下载并用 OpenJdk 11 替换 1.8 java。

      • 如上更新依赖项。

      在这种情况下,一切都很好,都可以编译,

      瞧,

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-03
        • 2021-06-08
        • 2023-01-14
        • 2021-09-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多