赞
踩
由于要吃饭的原因,要搞一下android原生开发,下载最新的android studio 2202.3.1,用默认的向导生成了一个android project。报了一堆错,我以为是android studio没有安装好的原因,想尽办法清理了android studio的安装,重新安装后,还是报错,在其他的电脑也是同样的情况
实际只有两个错,一个是sdk的版本。我用的是33, 但是依赖库要求就34。第二个错误,就是Duplicate class的,用这个转帖的文章的方法二,解决问题。
我这里修改的配置如下 build.gradle.kts(module:app)
- plugins {
- id("com.android.application")
- }
-
- android {
- namespace = "com.example.s02"
- compileSdk = 34
-
- defaultConfig {
- applicationId = "com.example.s02"
- minSdk = 24
- targetSdk = 33
- versionCode = 1
- versionName = "1.0"
-
- testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
- }
-
- buildTypes {
- release {
- isMinifyEnabled = false
- proguardFiles(
- getDefaultProguardFile("proguard-android-optimize.txt"),
- "proguard-rules.pro"
- )
- }
- }
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- buildFeatures {
- viewBinding = true
- }
- }
-
- dependencies {
- //-------------以下是加入下面的内容
- constraints {
- add("implementation", "org.jetbrains.kotlin:kotlin-stdlib-jdk7") {
- version {
- require("1.8.0")
- }
- }
- add("implementation", "org.jetbrains.kotlin:kotlin-stdlib-jdk8") {
- version {
- require("1.8.0")
- }
- }
- }
- //-------------以上是增加的内容
- implementation("androidx.appcompat:appcompat:1.6.1")
- implementation("com.google.android.material:material:1.9.0")
- implementation("androidx.constraintlayout:constraintlayout:2.1.4")
- implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.6.1")
- implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1")
- implementation("androidx.navigation:navigation-fragment:2.7.0")
- implementation("androidx.navigation:navigation-ui:2.7.0")
- testImplementation("junit:junit:4.13.2")
- androidTestImplementation("androidx.test.ext:junit:1.1.5")
- androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
- }

-----------------------------------------分割线-----------------------------------
某天将项目 kotlin 版本升级到了 1.8.0 ,然后编译报错了,Duplicate class kotlin-stblib vs kotlin-stdlib-jdk7/8
然后开始寻求解决方案...
kotlin 1.8.0 基于 JVM 1.8 编译,不再支持 JVM 1.6 和 1.7。后续不用单独在build.gradle 依赖 kotlin-stdlib-jdk7 and kotlin-stdlib-jdk8。
If you have explicitly declared kotlin-stdlib-jdk7 and kotlin-stdlib-jdk8 as dependencies in your build scripts, then you should replace them with kotlin-stdlib.
implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.0"))
- dependencies {
- constraints {
- add("implementation", "org.jetbrains.kotlin:kotlin-stdlib-jdk7") {
- version {
- require("1.8.0")
- }
- }
- add("implementation", "org.jetbrains.kotlin:kotlin-stdlib-jdk8") {
- version {
- require("1.8.0")
- }
- }
- }
- }
- dependencies {
- implementation("com.example:lib:1.0") {
- exclude group: "org.jetbrains.kotlin", module: "kotlin-stdlib"
- }
- }
参考文档:Configure a Gradle project | Kotlin Documentation
org.jetbrains.kotlin » kotlin-stdlib
org.jetbrains.kotlin » kotlin-stdlib-jdk7
org.jetbrains.kotlin » kotlin-stdlib-jdk8
org.jetbrains.kotlin » kotlin-stdlib-js
org.jetbrains.kotlin » kotlin-stdlib-common
org.jetbrains.kotlin » kotlin-reflect
org.jetbrains.kotlin » kotlin-osgi-bundle
org.jetbrains.kotlin » kotlin-test
org.jetbrains.kotlin » kotlin-test-junit
org.jetbrains.kotlin » kotlin-test-junit5
org.jetbrains.kotlin » kotlin-test-testng
org.jetbrains.kotlin » kotlin-test-js
org.jetbrains.kotlin » kotlin-test-common
org.jetbrains.kotlin » kotlin-test-annotations-common
org.jetbrains.kotlin » kotlin-main-kts
org.jetbrains.kotlin » kotlin-script-runtime
org.jetbrains.kotlin » kotlin-script-util
org.jetbrains.kotlin » kotlin-scripting-common
org.jetbrains.kotlin » kotlin-scripting-jvm
org.jetbrains.kotlin » kotlin-scripting-jvm-host
org.jetbrains.kotlin » kotlin-scripting-ide-services
org.jetbrains.kotlin » kotlin-compiler
org.jetbrains.kotlin » kotlin-compiler-embeddable
org.jetbrains.kotlin » kotlin-daemon-client
具体版本对应关系:
kotlin-bom 库版本对应表查询:https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-bom
作者:SharpCJ
出处:https://www.cnblogs.com/joy99/p/17398903.html
本站使用「署名 4.0 国际」创作共享协议,转载请在文章明显位置注明作者及出处。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。