刚刚更新到Mac上的Android Studio Arctic Fox,并修复和更新所有Gradle设置,使其与Gradle 7.0兼容,以及这个新版本需要我做的任何事情,我现在在构建我的项目时遇到了这个错误:
Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
> java.lang.reflect.InvocationTargetException (no error message)
下面是我的Project Gradle文件:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
kotlin_version = "1.5.21"
version_navigation = "2.3.5"
version_lifecycle_extensions = "2.2.0"
version_lifecycle = "2.3.1"
version_room = "2.4.0-alpha04"
//version_room = "2.2.6"
version_coroutine = "1.5.0"
version_retrofit = "2.9.0"
version_moshi = "1.9.3"
version_retrofit_coroutines_adapter = "0.9.2"
version_glide = "4.12.0"
}
repositories {
google()
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
classpath 'com.android.support:multidex:1.0.3'
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$version_navigation"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
下面是我的Module Gradle文件:
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-android-extensions'
id "org.jetbrains.kotlin.kapt"
//id 'androidx.navigation.safeargs'
}
android {
compileSdkVersion 30
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.virtualsheetmusic.vsheetmusic"
minSdkVersion 21
targetSdkVersion 30
versionCode 20
versionName "2.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
buildFeatures {
//dataBinding includes viewBidning below https://stackoverflow.com/questions/58040778/android-difference-between-databinding-and-viewbinding
dataBinding true
// for view binding only:
// viewBinding true
}
}
dependencies {
//implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
//implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
//implementation "org.jetbrains.kotlin:kotlin-android-extensions-runtime:$kotlin_version"
implementation 'androidx.core:core-ktx:1.6.0'
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation "androidx.fragment:fragment-ktx:1.3.6"
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1'
implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
implementation 'com.jakewharton.timber:timber:4.7.1'
//Lifecycle and LiveData
implementation "androidx.lifecycle:lifecycle-extensions:$version_lifecycle_extensions"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$version_lifecycle"
//Room
implementation "androidx.room:room-runtime:$version_room"
kapt "androidx.room:room-compiler:$version_room"//annotationProcessor
// Kotlin Extensions and Coroutines support for Room
implementation "androidx.room:room-ktx:$version_room"
// Coroutines
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$version_coroutine"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$version_coroutine"
// Testing
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
//For Internet connectiona and JSON stuff...
// Moshi
implementation "com.squareup.moshi:moshi:$version_moshi"
implementation "com.squareup.moshi:moshi-kotlin:$version_moshi"
// Retrofit
implementation "com.squareup.retrofit2:retrofit:$version_retrofit"
//implementation "com.squareup.retrofit2:converter-scalars:$version_retrofit"
// Retrofit with Moshi Converter
implementation "com.squareup.retrofit2:converter-moshi:$version_retrofit"
implementation "com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:$version_retrofit_coroutines_adapter"
//Glide
implementation "com.github.bumptech.glide:glide:$version_glide"
kapt "com.github.bumptech.glide:compiler:$version_glide"
//Recyclerview swipe-refresh...
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
//For PDF and download management from here: https://blog.mindorks.com/how-to-open-a-pdf-file-in-android-programmatically
//https://github.com/barteksc/AndroidPdfViewer
//implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
implementation 'com.github.barteksc:android-pdf-viewer:3.2.0-beta.1'
//implementation 'com.mindorks.android:prdownloader:0.6.0'
//This below to handle double clicks...
//implementation 'com.gitlab.developerdeveloperdeveloper:androidutilslibrary:1.0.0'
}
我还尝试通过使用命令行并执行“./gradlew clean build”来调试问题,以下是我得到的输出:
> Configure project :app
Warning: The 'kotlin-android-extensions' Gradle plugin is deprecated. Please use this migration guide (https://goo.gle/kotlin-android-extensions-deprecation) to start working with View Binding (https://developer.android.com/topic/libraries/view-binding) and the 'kotlin-parcelize' plugin.
> Task :app:stripDebugDebugSymbols
Unable to strip the following libraries, packaging them as they are: libc++_shared.so, libjniPdfium.so, libmodft2.so, libmodpdfium.so, libmodpng.so.
> Task :app:stripReleaseDebugSymbols
Unable to strip the following libraries, packaging them as they are: libc++_shared.so, libjniPdfium.so, libmodft2.so, libmodpdfium.so, libmodpng.so.
> Task :app:extractReleaseNativeSymbolTables
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips/libmodpng.so because unable to locate the objcopy executable for the mips ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips/libmodft2.so because unable to locate the objcopy executable for the mips ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips/libc++_shared.so because unable to locate the objcopy executable for the mips ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips/libmodpdfium.so because unable to locate the objcopy executable for the mips ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips/libjniPdfium.so because unable to locate the objcopy executable for the mips ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/libmodpng.so because unable to locate the objcopy executable for the armeabi-v7a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/libmodft2.so because unable to locate the objcopy executable for the armeabi-v7a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/libc++_shared.so because unable to locate the objcopy executable for the armeabi-v7a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/libmodpdfium.so because unable to locate the objcopy executable for the armeabi-v7a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/libjniPdfium.so because unable to locate the objcopy executable for the armeabi-v7a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips64/libmodpng.so because unable to locate the objcopy executable for the mips64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips64/libmodft2.so because unable to locate the objcopy executable for the mips64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips64/libc++_shared.so because unable to locate the objcopy executable for the mips64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips64/libmodpdfium.so because unable to locate the objcopy executable for the mips64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/mips64/libjniPdfium.so because unable to locate the objcopy executable for the mips64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86/libmodpng.so because unable to locate the objcopy executable for the x86 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86/libmodft2.so because unable to locate the objcopy executable for the x86 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86/libc++_shared.so because unable to locate the objcopy executable for the x86 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86/libmodpdfium.so because unable to locate the objcopy executable for the x86 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86/libjniPdfium.so because unable to locate the objcopy executable for the x86 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/arm64-v8a/libmodpng.so because unable to locate the objcopy executable for the arm64-v8a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/arm64-v8a/libmodft2.so because unable to locate the objcopy executable for the arm64-v8a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/arm64-v8a/libc++_shared.so because unable to locate the objcopy executable for the arm64-v8a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/arm64-v8a/libmodpdfium.so because unable to locate the objcopy executable for the arm64-v8a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/arm64-v8a/libjniPdfium.so because unable to locate the objcopy executable for the arm64-v8a ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86_64/libmodpng.so because unable to locate the objcopy executable for the x86_64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86_64/libmodft2.so because unable to locate the objcopy executable for the x86_64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86_64/libc++_shared.so because unable to locate the objcopy executable for the x86_64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86_64/libmodpdfium.so because unable to locate the objcopy executable for the x86_64 ABI.
Unable to extract native debug metadata from /Volumes/DocumentsNew/Users/fabrizio/AndroidStudioProjects/VSheetMusic/app/build/intermediates/merged_native_libs/release/out/lib/x86_64/libjniPdfium.so because unable to locate the objcopy executable for the x86_64 ABI.
> Task :app:kaptDebugKotlin FAILED
> Task :app:kaptReleaseKotlin FAILED
FAILURE: Build completed with 2 failures.
1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
> java.lang.reflect.InvocationTargetException (no error message)
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================
2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':app:kaptReleaseKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
> java.lang.reflect.InvocationTargetException (no error message)
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 15s
69 actionable tasks: 68 executed, 1 up-to-date
我已经花了几个小时弄清楚这一点,所以,请,如果你有任何想法,让我知道!
提前感谢大家。
6条答案
按热度按时间chy5wohz1#
问题解决了,伙计们。经过更多的研究和使用命令行构建以获得更多的调试信息(我使用./gradlew clean build --stacktrace),我发现Kapt和JDK 16有一些问题,如下所述:
https://youtrack.jetbrains.com/issue/KT-45545
我按照那边的建议加上:
到gradle.properties文件,并解决了这个问题!
nimxete22#
在尝试了不同的方法之后,我发现你需要为你的build.gradle文件中的所有项目添加google()和mavenCentral()存储库。
将其添加到Project下的build.gradle文件,然后同步您的项目
lztngnrs3#
我在Mac M1上遇到了同样的问题。问题是房间的使用:
我在这里找到了一个变通方法:https://youtrack.jetbrains.com/issue/DBE-12342你必须在你的build.gradle中添加这个来添加JDBC驱动程序:
j9per5c44#
设置NDK版本,以便“提取本机调试元数据”:
2w2cym1i5#
只需在项目级gradle中更新您的Kotlin依赖版本。
9njqaruj6#
对于我来说,为了摆脱这个bug,只是为了能够在编译时看到真实的问题,解决方案是将
VERSION_1_8
更改为VERSION_11
:android
块内