ข้อผิดพลาด: การดำเนินการล้มเหลวสำหรับงาน ': แอพ: compileDebugKotlin' > ข้อผิดพลาดในการรวบรวม ดูบันทึกสำหรับรายละเอียดเพิ่มเติม


154
Error:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more details

สร้าง: gradle (Module: แอป)

buildscript {
    repositories {
        maven {
            url 'https://jitpack.io'
            url 'https://maven.fabric.io/public'
        }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'io.fabric'
apply plugin: 'kotlin-android-extensions'


repositories {
    maven { url 'https://maven.fabric.io/public' }
    mavenCentral()
}


android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    useLibrary 'org.apache.http.legacy'



    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }

    defaultConfig {
        applicationId "uxx.xx.xxe"
        minSdkVersion 18
        targetSdkVersion 25
        versionCode 17
        versionName "0.1.14"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            debuggable false
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            ext.enableCrashlytics = false
            debuggable true
            minifyEnabled true
            shrinkResources true

            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
            assets.srcDirs = ['src/main/assets', 'src/main/assets/']
            res.srcDirs = ['src/main/res', 'src/main/assets/fonts']
        }
    }

    dexOptions {
        jumboMode true
        javaMaxHeapSize "4g"

    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/ECLIPSE_.SF'
        exclude 'META-INF/ECLIPSE_.RSA'
    }
}


dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')

    compile "com.android.support:cardview-v7:${rootProject.supportLibraryVersion}"
       compile "com.google.android.gms:play-services-ads:${rootProject.googlePlayServicesVersion}"
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    compile 'org.igniterealtime.smack:smack-android-extensions:4.1.9'
    compile 'org.igniterealtime.smack:smack-tcp:4.1.9'
    compile 'org.igniterealtime.smack:smack-experimental:4.1.9'
    testCompile 'junit:junit:4.12'
}

apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.getkeepsafe.dexcount'

สร้าง: gradle (โครงการ)

// ไฟล์สร้างระดับบนสุดที่คุณสามารถเพิ่มตัวเลือกการกำหนดค่าทั่วไปให้กับโครงการย่อย / โมดูลทั้งหมด

buildscript {
    ext.kotlin_version = '1.1.2-2'
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.1'
        classpath 'com.google.gms:google-services:3.0.0'
        //visualize the method count
        classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.6.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        jcenter()
        maven { url "https://jitpack.io" }
    }
}

ext.googlePlayServicesVersion = '10.2.0'
ext.supportLibraryVersion = '25.3.1'

task clean(type: Delete) {
    delete rootProject.buildDir
}

พยายามแก้ปัญหา:

  1. ทำให้แคช / เริ่มใช้งานไม่ถูกต้อง
  2. สร้าง -> โครงการใหม่ทั้งหมด
  3. อัปเดตปลั๊กอิน kotlin ใช้ kotlin เวอร์ชันล่าสุด, google apis

แก้ไข

./gradlew build --stacktrace > logs.txt 2>logErrors.txt

logErrors.txt

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileDebugKotlin'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:84)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:55)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:236)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:228)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:61)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:228)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:215)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:77)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:58)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:32)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:113)
    at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
    at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
    at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
    at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
    at org.gradle.initialization.DefaultGradleLauncher$3.execute(DefaultGradleLauncher.java:196)
    at org.gradle.initialization.DefaultGradleLauncher$3.execute(DefaultGradleLauncher.java:193)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:56)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:193)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:119)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:102)
    at org.gradle.launcher.exec.GradleBuildController.run(GradleBuildController.java:71)
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:75)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:49)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:44)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:29)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:47)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: org.gradle.api.GradleException: Compilation error. See log for more details
    at org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwGradleExceptionIfError(tasksUtils.kt:8)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.processCompilerExitCode(Tasks.kt:286)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:260)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:160)
    at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile.execute(Tasks.kt:141)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:163)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:123)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:95)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:76)
    ... 70 more

คุณสามารถโพสต์สิ่งที่อยู่ในบันทึกได้หรือไม่
zsmb13

1
เฮ้ขอโทษ ที่จริงฉันไม่รู้ว่าฉันควรมองหาบันทึกที่ไหน คุณช่วยฉันได้ไหมที่ @ zsmb13
Ankur_009

@ zsmb13 ฉันค้นหาในส่วนข้อความ แต่ไม่มีบันทึกที่ใช้ได้
Ankur_009

@ zsmb13 ฉันได้เพิ่มบันทึก
Ankur_009

คุณน่าจะยื่นปัญหาใน Kotlin bugtracker
Christian Brüggemann

คำตอบ:


211

ฉันได้รับข้อผิดพลาดหลังจากลองเปลี่ยนรหัสอย่างง่าย มันเกิดขึ้นหรือหลังจากที่ห้องสมุดบางส่วนเชื่อมต่อกันจะไม่มีการเปลี่ยนแปลงในระดับเสียง ดูเหมือนว่าบางอย่างในรหัสของฉันผิด แต่คอมไพเลอร์ไม่พบปัญหา นั่นเป็นเหตุผลที่ผมสองครั้งการตรวจสอบการเปลี่ยนแปลงทั้งหมดที่ฉันได้และพบว่าผมมีการเปลี่ยนแปลงอย่างใดลายเซ็นวิธีในอินเตอร์เฟซ แต่ยังไม่ได้มีการเปลี่ยนแปลงในคลาสที่ใช้มัน ฉันได้รับข้อผิดพลาดนี้สองครั้งในหนึ่งวันและตัดสินใจที่จะแบ่งปันประสบการณ์ของฉัน ฉันหวังว่ามันจะเป็นข้อผิดพลาดของคอมไพเลอร์ชั่วคราว

โซลูชันที่ 1วิธีแก้ไขที่เป็นไปได้คือไปที่ไฟล์ -> การตั้งค่า -> คอมไพเลอร์ -> และเพิ่ม "--stacktrace --debug" ไปที่ตัวเลือกบรรทัดคำสั่ง อ่านบันทึกแล้วลองพบคำตอบของสิ่งที่ผิดพลาด

ใน Android Studio 3.1 ใหม่ + คุณสามารถเปิด / ปิดการใช้งานบันทึกรายละเอียดคอนโซลได้โดยกด "Toggle View" บนแท็บ "Build" มีคุณสามารถค้นหารายละเอียด ให้ความสนใจว่าโหมดทั้งสองจะมีประโยชน์สำหรับการตรวจสอบสาเหตุของปัญหา ดู: https://stackoverflow.com/a/49717363/

ป้อนคำอธิบายรูปภาพที่นี่

โซลูชันที่ 2คลิกที่Gradle(บนแถบด้านขวา) จากนั้นภายใต้:appเลือกassembleDebug(หรือassembleYourFlavorถ้าคุณใช้รสชาติ) ข้อผิดพลาดจะปรากฏขึ้นในแท็บเรียกใช้ ดู: https://stackoverflow.com/a/51022296

โซลูชัน 3เป็นทางเลือกสุดท้าย ในสตูดิโอแอนดรอยด์ลองวิเคราะห์ -> ตรวจสอบรหัส -> โครงการทั้งหมด รอจนกว่าการตรวจสอบจะเสร็จสิ้นและแก้ไขข้อผิดพลาดในส่วน "ทั่วไป" และรายการที่เป็นไปได้ในส่วนอื่น ๆ

หมายเหตุ kapt3 สามารถเป็นแหล่งของข้อบกพร่องดังกล่าว ฉันออกapply plugin: 'kotlin-kapt'และเพิ่มkapt { generateStubs = true }เข้าไปในandroid {}ส่วนของ build.gradle ดูเหมือนว่ารุ่นก่อนหน้าของเครื่องกำเนิดไฟฟ้า Kapt ไม่มีข้อบกพร่อง ( อัปเดตดูเหมือนว่าบั๊กที่มี kapt จะหายไปใน kotlin เวอร์ชัน 1.2 +)


2
@ newbie ฉันหวังว่าวันหนึ่งเราจะได้รับการอัปเดตพร้อมการแก้ไขปัญหาดังกล่าว
Yazon2006

1
โซลูชันนี้ในการอัปเดตล่าสุดใช้งานได้สำหรับฉัน ลบ kotlin-kapt และเพิ่ม kapt {generetaStubs = true}
Infinite Loops

3
kapt เดิม (เก่า) เลิกใช้แล้วและจะถูกลบออกทันทีหลังจาก Kotlin 1.2 หากคุณพบปัญหาใด ๆ กับapply plugin: 'kotlin-kapt'โปรดยื่นปัญหาไปยังkotl.in/issue
yanex

3
@IgorGanapolsky ใน android studio ลองวิเคราะห์ -> ตรวจสอบรหัส -> โครงการทั้งหมด รอจนกว่าการตรวจสอบจะเสร็จสิ้นและแก้ไขข้อผิดพลาดในส่วน "ทั่วไป"
Yazon2006

1
ฉันใช้ Android studio 3.3 และ kotlin เวอร์ชั่น 1.3.20 โซลูชัน 3 ช่วยฉัน ขอบคุณมาก.
hunter09h

103

หากคุณใช้ AS 3.1 คอนโซลการสร้างแบบกราฟิกใหม่จะไม่เป็นประโยชน์สำหรับการค้นหาสาเหตุของปัญหา

คุณต้องคลิกที่มุมมองสลับและดูบันทึกในรูปแบบข้อความเพื่อดูข้อผิดพลาดและหากจำเป็น Run with --stacktrace

ป้อนคำอธิบายรูปภาพที่นี่


4
ขอบคุณ !! ฉันต้องทำหลังจากผ่านการดีบักสองสามชั่วโมง .. สิ่งหนึ่งที่ฉันต้องการเพิ่มในคำตอบของคุณคือข้อผิดพลาดอาจมีบางบรรทัดเหนือบรรทัดที่มีข้อความ "ข้อผิดพลาดในการรวบรวมดูข้อความเพื่อดูรายละเอียดเพิ่มเติม"
Iván Esparza

ขอบคุณ! มันชัดเจนมากขึ้นเพื่อดูข้อผิดพลาดข้อความ หลังจากการดีบักหลายชั่วโมงฉันพบข้อผิดพลาดที่ถูกต้อง สำหรับฉันมันเป็นเพราะ @inject ของ viewModel ฉันลืมใส่หมายเหตุประกอบไว้ในวิวคอนสตรัคเตอร์ modelModel ด้วย
Badr Yousfi

ตลกดีนี่เป็นวิธีเดียวที่จะจับข้อผิดพลาดเกี่ยวกับ Dagger ได้ ไร้สาระ!
egorikem

ขอบคุณมากสำหรับคำตอบนี้ ฉันพบว่าฉันลืมที่จะนำเข้าเข้าสู่ระบบภายใน LoggingInterceptor
Raj Suvariya

4
IDE ล้มเหลวในฐานะ IDE หากไม่สามารถถ่ายทอดข้อผิดพลาดในการคอมไพล์ไปยังผู้พัฒนาได้ Google อย่างจริงจัง: ทำงานวันหยุดสุดสัปดาห์จนกว่าจะได้รับการแก้ไข
Nilzor

99

ฉันมีข้อความแสดงข้อผิดพลาดที่ทำให้เข้าใจผิดคล้ายกับข้อความที่โพสต์ในคำถาม:

ข้อผิดพลาดในการรวบรวม ดูบันทึกสำหรับรายละเอียดเพิ่มเติม

และ:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileDebugKotlin'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
    at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.gradle.api.GradleException: Compilation error. See log for more details
    at org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwGradleExceptionIfError(tasksUtils.kt:16)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.processCompilerExitCode(Tasks.kt:429)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:390)
    at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:274)
    at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile.execute(Tasks.kt:233)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
    ... 32 more

สารละลาย:

ฉันแก้ไขมันโดย

  1. คลิกที่Gradle(บนแถบด้านขวา) ->
  2. จากนั้นภายใต้ :app
  3. จากนั้นเลือกassembleDebug(หรือassembleYourFlavorถ้าคุณใช้รสชาติ)

ในภาพ:

1 และ 2:

s1

3:

s2

ข้อผิดพลาดจะปรากฏขึ้นในแท็บเรียกใช้:


5
ขอบคุณ. พบปัญหาโดยใช้สิ่งนี้ สิ่งหนึ่งที่ควรทราบคือข้อผิดพลาดการไล่ระดับสีดั้งเดิมที่ไม่ได้ช่วยให้ปรากฏขึ้นมากก่อนเมื่อเลื่อนกลับไปที่บันทึกการเลื่อนกลับและคุณจะพบข้อผิดพลาดเดิม ระบุได้อย่างง่ายดายโดยลิงค์สีน้ำเงินไปยังไฟล์ต้นฉบับที่เป็นสาเหตุของปัญหา
Matthew Cawley

4
ฉันไม่เห็น "assembleDebug" ถ้ารายการ
user7856586

1
"./gradlew assembleDebug" ที่รูทโปรเจ็กต์จะทำงาน
Intel

@ user7856586 ฉันเหมือนกันไม่พบ assembleDebug
Vikas Pandey

2
": app / Tasks / other / assembleDebug" เป็นเส้นทางปัจจุบัน
Farwa

14

ในกรณีเช่นนี้gradle consoleจะแสดงรายละเอียดของปัญหาพร้อมตำแหน่งที่แน่นอนซึ่งนำไปสู่ข้อผิดพลาดในการรวบรวม

ในกรณีของฉันฉันใช้Butterknifeในชั้นเรียนของฉันและฉันมีauto-convertedชั้นเรียนนั้นเพื่อkotlinใช้ยูทิลิตี้ของ android studio

Log in Gradle Console

Executing tasks: [:app:assembleDebug]

Configuration on demand is an incubating feature.
Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
:app:buildInfoDebugLoader
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:checkDebugManifest UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:processDebugGoogleServices
Parsing json file: /Users/Downloads/myproject/app/google-services.json
:app:mergeDebugResources UP-TO-DATE
:app:createDebugCompatibleScreenManifests UP-TO-DATE
:app:processDebugManifest
:app:splitsDiscoveryTaskDebug UP-TO-DATE
:app:processDebugResources
:app:kaptGenerateStubsDebugKotlin
Using kotlin incremental compilation
:app:kaptDebugKotlin
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ConfirmationDialog.java:10: error: @BindView fields must not be private or static. (com.myproject.util.ConfirmationDialog.imgConfirmationLogo)
e: 

e:     private android.widget.ImageView imgConfirmationLogo;
e:                                      ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ConfirmationDialog.java:13: error: @BindView fields must not be private or static. (com.myproject.util.ConfirmationDialog.txtConfirmationDialogTitle)
e: 

e:     private android.widget.TextView txtConfirmationDialogTitle;
e:                                     ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ConfirmationDialog.java:16: error: @BindView fields must not be private or static. (com.myproject.util.ConfirmationDialog.txtConfirmationDialogMessage)
e: 

e:     private android.widget.TextView txtConfirmationDialogMessage;
e:                                     ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ConfirmationDialog.java:19: error: @BindView fields must not be private or static. (com.myproject.util.ConfirmationDialog.txtViewPositive)
e: 

e:     private android.widget.TextView txtViewPositive;
e:                                     ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ConfirmationDialog.java:22: error: @BindView fields must not be private or static. (com.pokkt.myproject.ConfirmationDialog.txtViewNegative)
e: 

e:     private android.widget.TextView txtViewNegative;
e:                                     ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ExitDialog.java:10: error: @BindView fields must not be private or static. (com.myproject.util.ExitDialog.txtViewPositive)
e: 

e:     private android.widget.TextView txtViewPositive;
e:                                     ^
e: /Users/Downloads/myproject/app/build/tmp/kapt3/stubs/debug/com/myproject/util/ExitDialog.java:13: error: @BindView fields must not be private or static. (com.myproject.util.ExitDialog.txtViewNegative)
e: 

e:     private android.widget.TextView txtViewNegative;
e:                                     ^
e: java.lang.IllegalStateException: failed to analyze: org.jetbrains.kotlin.kapt3.diagnostic.KaptError: Error while annotation processing
    at org.jetbrains.kotlin.analyzer.AnalysisResult.throwIfError(AnalysisResult.kt:57)
    at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules(KotlinToJVMBytecodeCompiler.kt:144)
    at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:167)
    at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:55)
    at org.jetbrains.kotlin.cli.common.CLICompiler.exec(CLICompiler.java:182)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.execCompiler(CompileServiceImpl.kt:397)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.access$execCompiler(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$1$2.invoke(CompileServiceImpl.kt:365)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$1$2.invoke(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$2$$special$$inlined$withValidClientOrSessionProxy$lambda$1.invoke(CompileServiceImpl.kt:798)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$2$$special$$inlined$withValidClientOrSessionProxy$lambda$1.invoke(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.common.DummyProfiler.withMeasure(PerfUtils.kt:137)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.checkedCompile(CompileServiceImpl.kt:825)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.access$checkedCompile(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$2.invoke(CompileServiceImpl.kt:797)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$2.invoke(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.ifAlive(CompileServiceImpl.kt:1004)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.ifAlive$default(CompileServiceImpl.kt:865)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.doCompile(CompileServiceImpl.kt:791)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.access$doCompile(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$1.invoke(CompileServiceImpl.kt:364)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$1.invoke(CompileServiceImpl.kt:99)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.ifAlive(CompileServiceImpl.kt:1004)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.ifAlive$default(CompileServiceImpl.kt:865)
    at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:336)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:346)
    at sun.rmi.transport.Transport$1.run(Transport.java:200)
    at sun.rmi.transport.Transport$1.run(Transport.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.jetbrains.kotlin.kapt3.diagnostic.KaptError: Error while annotation processing
    at org.jetbrains.kotlin.kapt3.AnnotationProcessingKt.doAnnotationProcessing(annotationProcessing.kt:90)
    at org.jetbrains.kotlin.kapt3.AnnotationProcessingKt.doAnnotationProcessing$default(annotationProcessing.kt:42)
    at org.jetbrains.kotlin.kapt3.AbstractKapt3Extension.runAnnotationProcessing(Kapt3Extension.kt:205)
    at org.jetbrains.kotlin.kapt3.AbstractKapt3Extension.analysisCompleted(Kapt3Extension.kt:166)
    at org.jetbrains.kotlin.kapt3.ClasspathBasedKapt3Extension.analysisCompleted(Kapt3Extension.kt:82)
    at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM$analyzeFilesWithJavaIntegration$2.invoke(TopDownAnalyzerFacadeForJVM.kt:89)
    at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(TopDownAnalyzerFacadeForJVM.kt:99)
    at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration$default(TopDownAnalyzerFacadeForJVM.kt:76)
    at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler$analyze$1.analyze(KotlinToJVMBytecodeCompiler.kt:365)
    at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:105)
    at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.analyze(KotlinToJVMBytecodeCompiler.kt:354)
    at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules(KotlinToJVMBytecodeCompiler.kt:139)
    ... 40 more


 FAILED
:app:buildInfoGeneratorDebug

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:kaptDebugKotlin'.
> Internal compiler error. See log for more details

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED in 32s

16 actionable tasks: 7 executed, 9 up-to-date

เช่นเดียวกับในบันทึกของฉันมันแสดงให้เห็นอย่างชัดเจนว่ามีปัญหาเกี่ยวกับการประกาศตัวแปรด้วย butterknife ดังนั้นฉันจึงตรวจสอบปัญหานี้และสามารถแก้ไขได้


ในความคิดของฉันดีกว่าที่จะใช้ส่วนขยาย kotlin แทน butterknife แต่อย่างไรก็ตามขอขอบคุณสำหรับการแบ่งปันประสบการณ์ของคุณ อาจเป็นประโยชน์สำหรับคนจำนวนมาก
Yazon2006

@ Yazon2006 kotlinรองรับเฟรมเวิร์ก Android มากมายตอนนี้ทำไมฉันลองดูที่kotlinlang.org/docs/tutorials/android-frameworks.html หลายครั้ง
DeltaCap019

1
คุณพูดถูก! แต่ถ้าเราพูดถึงการเริ่มต้นดูอย่างแน่นอนโดย @BindView ใน butterknife ฉันค้นพบว่าส่วนขยาย kotlin มอบวิธีที่ง่ายกว่ามากในการรับอินสแตนซ์ของการดูในโค้ด เพียงแค่ดูคุณจะรักมัน) kotlinlang.org/docs/tutorials/android-plugin.html
Yazon2006

1
@ Yazon2006 butterknifeขอขอบคุณสำหรับการเชื่อมโยงมันมากขึ้นกว่า
DeltaCap019

10

บน Mac:

ไปที่ Android Studio> ค่ากำหนด> Build, Execution, Deployment> Compiler

บน Windows:

ไปที่ไฟล์> การตั้งค่า>> Build, Execution, Deployment> Compiler

ในฟิลด์ตัวเลือกบรรทัดคำสั่งให้เพิ่มสามสถานะต่อไปนี้:

--stacktrace --info --scan

ดังแสดงด้านล่าง

ป้อนคำอธิบายรูปภาพที่นี่

ตอนนี้เปิดหน้าต่าง Build จากด้านล่างของสตูดิโอ Android ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นมีปุ่มที่ด้านซ้ายของหน้าต่างสร้าง:

ป้อนคำอธิบายรูปภาพที่นี่

กดปุ่มนี้คุณจะเห็นบันทึกรายละเอียดพร้อมรหัสที่แน่นอนซึ่งทำให้โครงการไม่สามารถรวบรวม


7

ฉันมีปัญหาที่คล้ายกัน ปัญหาคือว่าฉันเขียนคุณสมบัติของโมเดลในคุณลักษณะของมุมมองไม่ถูกต้อง:

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@{ferm.coin.value}"/> 

ส่วนนี้ผิด

@{ferm.coin.value}

เมื่อฉันเขียนคุณสมบัติที่ถูกต้องข้อผิดพลาดได้รับการแก้ไข


6

ข้อผิดพลาดนี้จะปรากฏขึ้นเมื่อมีข้อผิดพลาด Kotlin Compilation

เรียกใช้คำสั่งด้านล่างเพื่อค้นหาว่ามีข้อผิดพลาด Kotlin Compilation หรือไม่

gradlew clean assembleDebug (for Windows)
./gradlew clean assembleDebug (for Linux and Mac)

มันจะแสดงตำแหน่งที่แน่นอนบนบรรทัดที่มีข้อผิดพลาดในการรวบรวม Kotlin


6

ฉันเปลี่ยนโครงการของฉันให้ใช้ Androidx ดังนั้นฉันจึงใช้เครื่องมือการย้ายข้อมูล แต่บางไฟล์ (หลายไฟล์) ไม่ได้เปลี่ยนโดยอัตโนมัติ ฉันเปิดแต่ละไฟล์ (กิจกรรม, enums, แฟรกเมนต์) และฉันพบข้อผิดพลาดมากมาย ฉันแก้ไขให้ถูกต้อง แต่คอมไพล์ยังคงแสดงข้อผิดพลาดที่เข้าใจไม่ได้ หลังจากมองหาวิธีแก้ไขฉันพบคำตอบที่มีคนพูดว่า

ไปที่วิเคราะห์ >> ตรวจสอบรหัส

ป้อนคำอธิบายรูปภาพที่นี่

โครงการทั้งหมด:

ป้อนคำอธิบายรูปภาพที่นี่

ใช้เวลาสักครู่แล้วแสดงผลลัพธ์ด้านล่างให้ฉัน:

ป้อนคำอธิบายรูปภาพที่นี่

ขณะที่ฉันแก้ไขข้อผิดพลาดที่ฉันคิดว่ามีความสำคัญฉันกำลังเรียกใช้งานการสร้างจนกว่าข้อผิดพลาดที่เหลืออยู่จะไม่ส่งผลกระทบต่อการสร้างอีกต่อไป

รายละเอียด Android Studio ของฉัน

ป้อนคำอธิบายรูปภาพที่นี่


4

ฉันพบวิธีแก้ไขปัญหานี้แล้ว

โปรดปฏิบัติตามขั้นตอนเหล่านี้ด้านล่าง:

  1. ไปที่ไฟล์ -> การตั้งค่า -> คอมไพเลอร์ -> เพิ่ม To --stacktrace --debug ในช่อง Command-line-Options จากนั้นใช้ & ตกลง
  2. สร้างโครงการใหม่
  3. เรียกใช้โครงการ

3

ผมกำลังทุกข์ทรมานปัญหาเดียวกันที่ผมแก้ไขได้โดยการตรวจสอบการสร้างแท็บและสลับไปโหมดข้อความ ตรวจสอบคอนโซลมันจะแสดงว่าปัญหาของฉันถูกลบออก drawable โดยไม่ต้องลบการใช้งานและการลบชั้นเรียนโดยไม่ต้องลบการใช้งานด้วย ปุ่มโหมดข้อความ


2

ในกรณีของฉันฉันเปลี่ยน version="1.0"ไปเป็นxml version="1.0"ไฟล์ XML โดยไม่ตั้งใจ

ฉันแค่ต้องเปลี่ยนมันกลับ

หากคุณมีปัญหาเดียวกันและวิธีแก้ไขปัญหาข้างต้นไม่ได้ผลสำหรับคุณ เปิดGradle Consoleและเลื่อนไปที่Run with --debug optionคลิกและมันจะแสดงข้อมูลที่เป็นประโยชน์เพิ่มเติมเกี่ยวกับข้อผิดพลาดของคุณ

หมายเหตุบางส่วน:

ข้อผิดพลาดนี้ไม่ปรากฏขึ้นโดยตรงหลังจากฉันทำการเปลี่ยนแปลงใน XML มันจะปรากฏขึ้นหลังจากฉันเปลี่ยนรหัสจาวาบางอย่างเท่านั้น ฉันคิดว่ามันมีบางอย่างเกี่ยวกับการดำเนินการทันทีและสร้างเงินสด


2

ฉันต้องการเพิ่มวิธีแก้ไขปัญหาของฉันไปด้านบนบางทีอาจช่วยคนได้ เมื่อฉันสร้างfieldในรูปแบบผ่านRoomและไม่ได้สร้างสำหรับgetter/setter fieldในฐานะที่เป็นโครงการผลลัพธ์จะไม่รวบรวมและไม่มีข้อผิดพลาดที่ชัดเจน


2

ฉันมีปัญหาเดียวกันและในที่สุดก็ค้นพบเหตุผล ในกรณีของฉันมันเป็นวิธี Java เขียนไม่ดี:

@FormUrlEncoded
@POST("register-user/")
Call<RegisterUserApiResponse> registerUser(
        @Field("email") String email,
        @Field("password") String password,            
        @Field("date") String birthDate,
);

บันทึกเครื่องหมายจุลภาคที่ผิดกฎหมายหลังช่อง "วันที่" ด้วยเหตุผลบางอย่างคอมไพเลอร์ไม่สามารถเปิดเผยข้อผิดพลาดที่แน่นอนนี้และมาพร้อมกับ':app:compileDebugKotlin'. > Compilation errorสิ่งที่




2

ฉันประสบปัญหาคล้ายกันโดยไม่มีเหตุผลฉันคิดว่ามันเกิดจาก IDE (android studio) ฉันได้ลองวิธีแก้ปัญหาทั้งหมดข้างต้นแล้ว แต่ไม่ได้ผล ในที่สุดในสถานการณ์ของฉันฉันแก้ไขปัญหานี้โดยการกระทำดังต่อไปนี้: - ปิดโครงการปัจจุบันและลบออกจากรายการของโครงการใน android studio และเปิดใหม่อีกครั้งโดยOpen an existing Android Studio projectอาจใช้งานได้ ฉันหวังว่าประสบการณ์ของฉันจะเป็นประโยชน์สำหรับคุณ


2

ในกรณีของฉัน :: ฉันใช้kotlin extensionsเพื่อเข้าถึงและผูกความคิดเห็นของฉันฉันเพิ่งย้ายviewไปยังหน้าจออื่นและลืมที่จะลบการอ้างอิงจากส่วนก่อนหน้านี้ที่ทำให้เกิดข้อผิดพลาดนี้

kotlin synthetic extensionsไม่ได้รวบรวมเวลาที่ปลอดภัย ฉันชอบสิ่งนี้มาก แต่เห็นได้ชัดในโครงการขนาดใหญ่ถ้าสิ่งนี้เกิดขึ้นอีกฉันจะต้องหัวใจวาย


1

ฉันมีปัญหาเดียวกัน เพื่อแก้ไขปัญหานี้เพียงแค่เปิดไฟล์ทั้งหมดของคุณ (ไฟล์ทำงานล่าสุด) ซึ่งคุณทำการเปลี่ยนแปลงและตรวจสอบว่าคุณลืมลบบางไฟล์ซึ่งควรจะลบ

ในกรณีของฉันมีปัญหากับรหัส Unreferenced ที่ฉันใช้ในไฟล์ของฉันและรหัสนั้นมีอยู่ในไฟล์นั้นซึ่งไม่ควรอยู่ในไฟล์นั้นเพราะฉันใช้อินเตอร์เฟซที่ฉันได้ลบออกจากโครงการของฉัน แต่ฉัน ลืมที่จะลบออกจากไฟล์ของฉัน)


1

ในกรณีของฉันฉันพยายามที่จะปรับรุ่นplay_servicesและรุ่นที่จะfirebase 15.0กลับไป11.4.2แก้ไขปัญหาของฉัน ...


1

สถานการณ์ของฉัน:

ดาต้าคลาสเก่าของ Kotlin:

data class AddHotelParams(val destination: Place?, val checkInDate: LocalDate,
                      val checkOutDate: LocalDate?): JsonObject

ใหม่ dataclass Kotlin:

data class AddHotelParams(val destination: Place?, val checkInDate: LocalDate,
                      val checkOutDate: LocalDate?, val roundTrip: Boolean): JsonObject

ปัญหาคือฉันลืมเปลี่ยนการเริ่มต้นวัตถุในบางส่วนของรหัส ฉันได้รับข้อผิดพลาดทั่วไป "compileInternalDebugKotlin" แทนที่จะได้รับแจ้งว่าฉันต้องเปลี่ยนการเริ่มต้นที่ใด

เปลี่ยนการเริ่มต้นไปยังทุกส่วนของรหัสแก้ไขข้อผิดพลาด


1

ในกรณีของฉันฉันลืมที่จะเพิ่มประเภทกลับไปยังฟังก์ชั่นในชั้นเรียนที่สืบทอดมาของฉันจาก RoomDatabase:

abstract class LocalDb : RoomDatabase() {
    abstract fun progressDao(): ProgressDao
}

ProgressDaoชนิดกลับหายไป


0

โซลูชันล่าสุดที่เป็นไปได้อีกอย่างหนึ่งคือการเปลี่ยนเวอร์ชั่น gradle เป็น:

classpath 'com.android.tools.build:gradle:3.0.0-rc2'

และอัปเดตเครื่องมือสร้าง


0

ฉันมีปัญหาเดียวกันและในที่สุดก็ถึงทางออก

เพิ่ม " --stacktrace --debug " ในตัวเลือกบรรทัดคำสั่งของคุณ (ไฟล์ -> การตั้งค่า -> คอมไพเลอร์) จากนั้นเรียกใช้ สิ่งนี้จะแสดงปัญหา (รหัสที่ไม่ต้องการ) ในรหัสของคุณ


0

ในกรณีที่ข้อผิดพลาดของฉันเกิดจากสายนี้

@BindColor (R.color.colorAccent) var mColor: Int? = 0

แก้ไขโดย

@JvmField @BindColor (android.R.color.white) @ColorInt var ภายใน mColor: Int = 0

ข้อผิดพลาดใน GradleConsole

: app: kaptDebugKotlin e: \ app \ build \ tmp \ kapt3 \ stubs \ debug \ MainFragment.java: 23: ข้อผิดพลาด: @BindColor ฟิลด์ประเภทต้องเป็น 'int' หรือ 'ColorStateList' (com.sample.MainFragment.mColor) e:

e: private java.lang.Integer mColor;


0

ฉันรู้สึกประหลาดใจที่พบว่าเมื่อฉันมีคลาสที่ถูกปิดมันทำให้เกิดข้อผิดพลาดที่คลุมเครือนี้ การเปลี่ยนเป็นคลาสแบบเปิดสามารถแก้ไขปัญหาได้

before:

 class DefaultSubscriber<T> : Observer<T> {//...
}

after:

open class DefaultSubscriber<T> : Observer<T> {//...
}

0

ในกรณีของฉันการอัปเดตcom.android.tools.build:gradleเป็นเวอร์ชันล่าสุดและสร้างโครงการใหม่ในโหมดออนไลน์ของ Gradle ได้แก้ปัญหาแล้ว


0

การเปลี่ยนแปลงด้านล่างเหมาะสำหรับฉัน

ฉันเปลี่ยน URL การกระจายอยู่ใน gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip

และ

dependencies {
    classpath 'com.android.tools.build:gradle:3.2.1'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
  }

kotlin เวอร์ชั่น 1.2.71


0

ในกรณีของฉันมันเป็นพารามิเตอร์ที่ไม่ได้ใช้ในฟังก์ชั่นการคงอยู่ในชั้น DAO


0

ทำงานgradle assembleDebug --scanใน Android studio Terminal ในกรณีของฉันฉันลบองค์ประกอบใน XML และลืมที่จะลบออกจากรหัส แต่คอมไพเลอร์ไม่สามารถรวบรวมและแสดงError:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more detailsให้ฉัน

ป้อนคำอธิบายรูปภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.