Error:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more details
bauen: gradle (Modul: app)
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'
bauen: gradle (Projekt)
// Build-Datei auf oberster Ebene, in der Sie Konfigurationsoptionen für alle Unterprojekte/Module hinzufügen können.
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
}
Lösung ausprobiert:
EDIT
./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
Ich habe einen solchen Fehler nach einem einfachen Versuch des Code-Refactorings erhalten. Es ist passiert, nachdem einige Bibliotheken verbunden waren, und auch keine Änderungen in Gradle. Es sah aus, als sei etwas in meinem Code falsch, aber der Compiler konnte das Problem nicht finden. Deshalb habe ich alle Änderungen, die ich gemacht habe, noch einmal überprüft und festgestellt, dass ich irgendwie die Methodensignatur in der Schnittstelle geändert hatte, sie aber nicht in der Klasse geändert hat, die sie implementiert .. _ meine Erfahrung zu teilen. Ich hoffe, dass es sich um einen temporären Compiler-Fehler handelt.
Lösung 1 Eine mögliche Lösung ist, zu Datei -> Einstellungen -> Compiler -> zu gehen und "--stacktrace --debug" zu den Befehlszeilenoptionen hinzuzufügen. Lesen Sie das Protokoll und versuchen Sie die Antwort zu finden, was falsch gelaufen ist.
In neuem Android Studio 3.1. + Können Sie die Protokolldetails der Konsole aktivieren/deaktivieren, indem Sie auf der Registerkarte "Erstellen" auf "Ansicht umschalten" klicken. Dort finden Sie die Details. Beachten Sie, dass beide Modi für die Untersuchung der Ursache des Problems nützlich sein können. Siehe: https://stackoverflow.com/a/49717363/
Lösung 2 Klicken Sie auf Gradle
(in der rechten Seitenleiste) und wählen Sie unter :app
assembleDebug
(oder assembleYourFlavor
, wenn Sie Flavors verwenden). Der Fehler wird auf der Registerkarte Run angezeigt. Siehe: https://stackoverflow.com/a/51022296
Solution 3 Als letzter Ausweg. Versuchen Sie im Android-Studio Analysieren -> Code prüfen -> Gesamtes Projekt. Warten Sie, bis die Prüfung abgeschlossen ist, und korrigieren Sie dann die Fehler im Abschnitt "Allgemein" und mögliche Fehler in den anderen Abschnitten.
Note Der kapt3 kann eine Quelle für solche Fehler sein. Ich habe apply plugin: 'kotlin-kapt'
entfernt und kapt { generateStubs = true }
im Android {}
-Abschnitt von build.gradle hinzugefügt. Es scheint, dass die vorherige Version des kapt-Generators fehlerfrei ist. (Update. Anscheinend ist ein Fehler mit kapt in der Version 1.2 von kotlin verschwunden. +)
Ich habe fast fünf Stunden damit verbracht, herauszufinden, was mit diesen irreführenden Fehlermeldungen falsch ist, die denen in der Frage ähnlich sind:
Compilation error. See log for more details
Und:
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
Ich habe es durch gelöst
Gradle
(in der rechten Seitenleiste) -> :app
assembleDebug
(oder assembleYourFlavor
, wenn Sie Flavors verwenden)Im Bild:
1 & 2:
3:
Der Fehler wird in der Registerkarte Run: angezeigt.
Ich hoffe es hat auch jemandem geholfen
In diesem Fall wird unter gradle console
das Problem detailliert mit dem genauen Ort angezeigt, der zu diesem Kompilierungsfehler geführt hat.
In meinem Fall habe ich Butterknife
in einer meiner Klasse verwendet, und ich hatte auto-converted
diese Klasse für kotlin
mit dem Dienstprogramm von 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
Wie aus meinem Protokoll hervorgeht, gibt es eindeutig Probleme mit der Deklaration von Variablen mit Buttermesser. Also habe ich mir dieses Problem angesehen und konnte es lösen.
Ich hatte ein ähnliches Problem ... Das Problem war, dass ich die Eigenschaften des Modells falsch in die Attribute der Ansicht geschrieben habe:
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="@{ferm.coin.value}"/>
Dieser Teil war falsch:
@{ferm.coin.value}
Als ich die richtige Eigenschaft geschrieben habe, wurde der Fehler behoben.
Dieser Fehler wird angezeigt, wenn ein Kotlin-Kompilierungsfehler vorliegt.
Führen Sie den folgenden Befehl aus, um herauszufinden, wo ein Kotlin-Kompilierungsfehler vorliegt.
gradlew clean assembleDebug (for Windows)
./gradlew clean assembleDebug (for Linux and Mac)
Es wird Ihnen die genaue Position angezeigt, in der sich der Kotlin-Kompilierungsfehler befindet.
Ich hatte das gleiche Problem, das ich gelöst habe, indem ich die Registerkarte "Erstellen" überprüft und in den Textmodus gewechselt habe . Überprüfen Sie die Konsole, um die Probleme anzuzeigen, die beim Entfernen eines Drawables ohne Löschen der Verwendung und beim Löschen einer Klasse ohne Löschen der Verwendung aufgetreten sind Textmodus-Schaltfläche
Ich habe eine Lösung für dieses Problem gefunden.
Bitte folgen Sie diesen Schritten:
Ich möchte meine Lösung oben hinzufügen, vielleicht hilft sie jemandem. Wenn ich über field
eine Room
an einem Modell erstelle und nicht getter/setter
für die field
generiere. Daher wird das Projekt nicht kompiliert und es werden keine klaren Fehler angezeigt.
android Studio wurde von 3.2.1 auf 3.3 aktualisiert und das Problem ist verschwunden
Ich hatte das gleiche Problem und entdeckte schließlich den Grund. In meinem Fall war es eine schlecht geschriebene Java-Methode:
@FormUrlEncoded
@POST("register-user/")
Call<RegisterUserApiResponse> registerUser(
@Field("email") String email,
@Field("password") String password,
@Field("date") String birthDate,
);
Beachten Sie das unzulässige Komma nach dem Feld "Datum". Aus irgendeinem Grund konnte der Compiler diesen genauen Fehler nicht enthüllen und kam mit dem ':app:compileDebugKotlin'. > Compilation error
-Ding.
in meinem Fall: Ich habe kotlin extensions
verwendet, um auf meine Ansichten zuzugreifen und sie zu binden. Vor kurzem habe ich view
auf einen anderen Bildschirm verschoben und vergessen, die Referenz aus dem vorherigen Fragment zu entfernen, das diesen Fehler verursacht hat.
kotlin synthetic extensions
sind zur Kompilierungszeit nicht sicher. Ich habe das wirklich geliebt, aber anscheinend in großen Projekten, wenn das wieder passiert, werde ich sicherlich einen Herzinfarkt bekommen.
In meinem Fall habe ich versucht, play_services
und firebase
-Versionen auf 15.0
zu aktualisieren. Zurück zu 11.4.2
wurde mein Problem behoben ...
in meinem Fall habe ich versehentlich version="1.0"
in xml version="1.0"
in meiner XML-Datei geändert.
Ich musste es nur zurückwechseln.
wenn Sie dasselbe Problem haben und die oben genannten Lösungen für Sie nicht geeignet waren, öffnen Sie Gradle Console
und blättern Sie zu Run with --debug option
. Klicken Sie darauf und es werden Ihnen weitere nützliche Informationen zu Ihrem Fehler angezeigt.
einige Notizen:
dieser Fehler wird nicht direkt angezeigt, nachdem ich die Änderung in XML vorgenommen habe. Er erscheint erst, wenn ich etwas Java-Code ändere. Ich denke, es hat etwas mit dem sofortigen Lauf und dem Bauen von Geld zu tun.
Mein Szenario:
alte Kotlin-Datenklasse:
data class AddHotelParams(val destination: Place?, val checkInDate: LocalDate,
val checkOutDate: LocalDate?): JsonObject
neue Kotlin-Datenklasse:
data class AddHotelParams(val destination: Place?, val checkInDate: LocalDate,
val checkOutDate: LocalDate?, val roundTrip: Boolean): JsonObject
Das Problem war, dass ich vergessen habe, die Objektinitialisierung in einigen Teilen des Codes zu ändern. Ich habe einen generischen Fehler "compileInternalDebugKotlin" erhalten, anstatt zu wissen, wo ich die Initialisierung ändern musste.
das Ändern der Initialisierung in allen Teilen des Codes hat den Fehler behoben.
Ich hatte das gleiche Problem. Um dieses Problem zu lösen, öffnen Sie einfach alle Dateien (aktuelle Arbeitsdateien), in denen Sie die Änderungen vorgenommen und überprüft haben. Vergessen Sie, einige zu löschen, die gelöscht werden sollten.
In meinem Fall war das Problem der unreferenced Code, den ich in einer meiner Dateien verwendet habe, und dieser Code ist in dieser Datei enthalten, der nicht in dieser Datei enthalten sein sollte, da ich eine Schnittstelle verwendet habe, die ich aus meinem Projekt gelöscht habe aber ich vergesse, aus einer meiner Dateien zu löschen).
Auf dem Mac:
gehen Sie zu Android Studio> Voreinstellungen> Erstellen, Ausführen, Bereitstellung> Compiler
Unter Windows:
gehen Sie zu Datei> Einstellungen>> Erstellen, Ausführen, Bereitstellung> Compiler
Fügen Sie nun im Feld Befehlszeilenoptionen die folgenden drei Flags hinzu:
--stacktrace --info --scan
wie unten gezeigt
Öffnen Sie nun das Build-Fenster von unten in Android Studio
Dann gibt es eine Schaltfläche auf der linken Seite des Erstellungsfensters:
wenn Sie diese Schaltfläche drücken, werden detaillierte Protokolle mit genauem Code angezeigt, die das Kompilieren des Projekts verhindern
ich war überrascht zu erfahren, dass ich, als ich eine geschlossene Klasse hatte, diesen vagen Fehler hervorbrachte. Durch das Ändern in eine offene Klasse wurde das Problem behoben.
before:
class DefaultSubscriber<T> : Observer<T> {//...
}
after:
open class DefaultSubscriber<T> : Observer<T> {//...
}
Diese Linie funktioniert für mich auf Mac oder Linux.
./gradlew clean assembleDebug
In meinem Fall wurde ein Fehler durch diese Zeile verursacht
@BindColor (R.color.colorAccent) var mColor: Int? = 0
Gelöst von
@JvmField @BindColor (Android.R.color.white) @ ColorInt internal var mColor: Int = 0
Fehler in GradleConsole
: app: kaptDebugKotlin e:\app\build\tmp\kapt3\stubs\debug\MainFragment.Java: 23: Fehler: @BindColor-Feldtyp muss 'int' oder 'ColorStateList' sein. (com.sample.MainFragment.mColor) e:
e: private Java.lang.Integer mColor;
Ich sah mich dem ähnlichen Problem ohne Grund gegenüber, ich denke, es wurde von IDE (Android Studio) verursacht. Ich habe alle oben genannten Lösungen ausprobiert, aber nicht funktioniert. Schließlich habe ich in meiner eigenen Situation dieses Problem durch die folgenden Aktionen gelöst: - Schließen Sie das aktuelle Projekt und entfernen Sie es aus der Liste der Projekte in Android Studio, und öffnen Sie es erneut mit Open an existing Android Studio project
, dann kann es bearbeitet werden. Ich hoffe, dass meine Erfahrung für Sie nützlich sein wird.
Ich habe mein Projekt auf Androidx umgestellt, also habe ich das Migrationstool verwendet, aber einige Dateien (viele Dateien) haben sich nicht automatisch geändert. Ich habe jede Datei (Aktivitäten, Aufzählungen, Fragmente) geöffnet und so viele Fehler gefunden. Ich habe sie korrigiert, aber die Kompilierung zeigt mir immer noch unverständliche Fehler. Nachdem ich nach einer Lösung gesucht hatte, fand ich diese Antwort, die jemand sagte:
gehe zu Analyse >> Code überprüfen
Ganzes Projekt:
Es hat einige Zeit gedauert und mir dann das folgende Ergebnis gezeigt:
Als ich die Fehler korrigierte, die ich für wichtig hielt, führte ich den Build aus, bis die verbleibenden Fehler den Build nicht mehr betrafen.
Meine Android Studio-Details
Ich hatte das gleiche Problem und erreichte schließlich die Lösung.
fügen Sie den Befehlszeilenoptionen (Datei -> Einstellungen -> Compiler) " - stacktrace --debug " hinzu und führen Sie es aus. Dadurch wird das Problem (unerwünschter Code) in Ihrem Code angezeigt.
Die folgenden Änderungen funktionierten für mich
Ich ändere die Distributions-URL in gradle-wrapper.properties
distributionUrl = https: //services.gradle.org/distributions/gradle-4.9-all.Zip
Und
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 Version 1.2.71
In meinem Fall konnte das Problem behoben werden, indem com.Android.tools.build:gradle
auf die letzte Version aktualisiert und das Projekt im Online-Modus von Gradle neu erstellt wurde.
Eine andere mögliche Lösung in letzter Zeit ist die Änderung der Gradle-Version in:
classpath 'com.Android.tools.build:gradle:3.0.0-rc2'
build-Tool aktualisieren und aktualisieren