Android Compose:类型被定义多次

问题描述 投票:0回答:3

提前感谢您的帮助。

我是 Android 开发新手,所以如果我的问题很愚蠢或重复,请道歉。

我在 Android Studio

4.2.0-alpha12
和 Gradle 版本
6.6.1
上使用 jetpack compose。我在构建应用程序时遇到错误

Type com.example.athis.model.course.Coordinate-$$ExternalSynthetic1 is defined multiple times: /Users/noahtatko/AndroidStudioProjects/golf_score_android/app/build/intermediates/project_dex_archive/debug/out/com/example/athis/model/course/Coordinate.dex, /Users/noahtatko/AndroidStudioProjects/golf_score_android/app/build/intermediates/project_dex_archive/debug/out/com/example/athis/model/course/Hole.dex

kotlin 文件(不是

.dex
文件)如下:

// Hole.kt
package com.example.athis.model.course

import androidx.compose.runtime.Immutable

@Immutable
data class Hole(
    val id: Long,
    val hole: Long,
    val yards: Long,
    val handicap: Int,
    val par: Int,
    val coordinates: Coordinate
)
// Coordinate.kt
package com.example.athis.model.course

import androidx.compose.runtime.Immutable

@Immutable
data class Coordinate(
    val id: Long,
    val lat: Double,
    val long: Double
)

我尝试过切换我的 gradle 版本,因为这似乎是正常的修复,但因为我使用的是 compose,所以我仅限于 6.6.1 之后的版本,这些版本都没有帮助。

可能需要考虑的一件奇怪的事情:即使我使用的是 Mac,我也有一个

gradlew.bat
文件,并且
./gradlew build
不起作用。有没有办法让这些重新生成呢?我尝试删除它们,但应用程序根本无法运行,而不仅仅是构建失败。

android kotlin gradle android-jetpack-compose
3个回答
0
投票

事实证明,主要问题在于我使用的 compose 版本

1.0.0-alpha3
。跳转到
1.0.0-alpha4
修复了所有问题。


0
投票

我必须将 Gradle 从 6.8-rc3 降级到 6.8-rc1 才能消除上面发布的错误。


0
投票

我删除了应用程序/构建/中间体并且它起作用了

© www.soinside.com 2019 - 2024. All rights reserved.