Problem
After last Android Studio update to 3.3.0 i got this WARNING:
API 'variant.getExternalNativeBuildTasks()' is obsolete and has been replaced with 'variant.getExternalNativeBuildProviders()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getExternalNativeBuildTasks(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
Affected Modules: app
if i remove this row from application gradle:
apply plugin: 'io.fabric'
error will not appear
I am getting the same warning, any idea?
I was really struggling to solve a issue related to this and the latest Gradle version, please remove the fabric dependency asap.
EDIT 1: Don't do this, this plugin is essential to keep Crashlytics running. Hope they will fix it soon.
Same problem
If you remove 'apply plugin: 'io.fabric' Firebase Crashlytics would stop working. So the best thing is to live with the warning if you want to use Crashlytics. Hopefully, they fix it soon.
same problem this has started to appear after updating the android studio to a stable version of 3.3
classpath 'com.android.tools.build:gradle:3.2.1'
I've got the same issue, i've managed to pull the stack trace adding: android.debug.obsoleteApi=true to gradle.properties the stacktrace is as follows:
java.lang.Thread.getStackTrace(Thread.java:1556)
com.android.build.gradle.internal.errors.DeprecationReporterImpl.reportDeprecatedApi(DeprecationReporterImpl.kt:79)
com.android.build.gradle.internal.api.BaseVariantImpl.getExternalNativeBuildTasks(BaseVariantImpl.java:487)
com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated.getExternalNativeBuildTasks(null:-1)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
groovy.lang.MetaBeanProperty.getProperty(MetaBeanProperty.java:59)
org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.getProperty(BeanDynamicObject.java:228)
org.gradle.internal.metaobject.BeanDynamicObject.tryGetProperty(BeanDynamicObject.java:171)
org.gradle.internal.metaobject.CompositeDynamicObject.tryGetProperty(CompositeDynamicObject.java:55)
org.gradle.internal.metaobject.AbstractDynamicObject.getProperty(AbstractDynamicObject.java:59)
com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated.getProperty(null:-1)
org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:299)
com.crashlytics.tools.gradle.ProjectVariantState.resolveDebugNativeLibsPath(ProjectVariantState.groovy:130)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:352)
groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:68)
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:177)
com.crashlytics.tools.gradle.ProjectVariantState$_deriveFrom_closure1.doCall(ProjectVariantState.groovy:55)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
groovy.lang.Closure.call(Closure.java:418)
groovy.lang.Closure.call(Closure.java:434)
org.codehaus.groovy.runtime.DefaultGroovyMethods.with(DefaultGroovyMethods.java:327)
org.codehaus.groovy.runtime.dgm$758.invoke(null:-1)
org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoMetaMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:251)
org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call(PogoMetaMethodSite.java:71)
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128)
com.crashlytics.tools.gradle.ProjectVariantState.deriveFrom(ProjectVariantState.groovy:43)
com.crashlytics.tools.gradle.ProjectVariantState$deriveFrom.call(null:-1)
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:144)
com.crashlytics.tools.gradle.CrashlyticsPlugin.createTaskBuilder(CrashlyticsPlugin.groovy:271)
com.crashlytics.tools.gradle.CrashlyticsPlugin.this$2$createTaskBuilder(CrashlyticsPlugin.groovy:-1)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:210)
org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
com.crashlytics.tools.gradle.CrashlyticsPlugin.addPluginTasks(CrashlyticsPlugin.groovy:245)
com.crashlytics.tools.gradle.CrashlyticsPlugin.this$2$addPluginTasks(CrashlyticsPlugin.groovy:-1)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:78)
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:398)
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:338)
groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:68)
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
com.crashlytics.tools.gradle.CrashlyticsPlugin$_addPluginTasksToApplicationVariantsIn_closure2.doCall(CrashlyticsPlugin.groovy:92)
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
groovy.lang.Closure.call(Closure.java:418)
groovy.lang.Closure.call(Closure.java:434)
org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:155)
org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
org.gradle.util.ConfigureUtil$WrappedConfigureAction.execute(ConfigureUtil.java:167)
org.gradle.internal.ImmutableActionSet$SetWithFewActions.execute(ImmutableActionSet.java:285)
org.gradle.api.internal.DefaultDomainObjectCollection.doAdd(DefaultDomainObjectCollection.java:244)
org.gradle.api.internal.DefaultDomainObjectCollection.add(DefaultDomainObjectCollection.java:233)
com.android.build.gradle.AppExtension.addVariant(AppExtension.java:87)
com.android.build.gradle.internal.ApiObjectFactory.create(ApiObjectFactory.java:134)
com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:777)
com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:81)
com.android.build.gradle.BasePlugin.lambda$createTasks$4(BasePlugin.java:651)
com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt:37)
com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt:-1)
org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1$1.run(DefaultListenerBuildOperationDecorator.java:155)
org.gradle.configuration.internal.DefaultUserCodeApplicationContext.reapply(DefaultUserCodeApplicationContext.java:58)
org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1.run(DefaultListenerBuildOperationDecorator.java:152)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction.execute(DefaultListenerBuildOperationDecorator.java:149)
org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:91)
org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:80)
org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:42)
org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:230)
org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:149)
org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:58)
org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:324)
org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:234)
org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:140)
org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
com.sun.proxy.$Proxy34.afterEvaluate(null:-1)
org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate$1.execute(LifecycleProjectEvaluator.java:187)
org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate$1.execute(LifecycleProjectEvaluator.java:184)
org.gradle.api.internal.project.DefaultProject.stepEvaluationListener(DefaultProject.java:1418)
org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate.run(LifecycleProjectEvaluator.java:193)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject.run(LifecycleProjectEvaluator.java:110)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:68)
org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:687)
org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:140)
org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35)
org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:62)
org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:41)
org.gradle.initialization.DefaultGradleLauncher$ConfigureBuild.run(DefaultGradleLauncher.java:274)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
org.gradle.initialization.DefaultGradleLauncher.configureBuild(DefaultGradleLauncher.java:182)
org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:141)
org.gradle.initialization.DefaultGradleLauncher.getConfiguredBuild(DefaultGradleLauncher.java:119)
org.gradle.internal.invocation.GradleBuildController$2.call(GradleBuildController.java:86)
org.gradle.internal.invocation.GradleBuildController$2.call(GradleBuildController.java:83)
org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:154)
org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks(StopShieldingWorkerLeaseService.java:38)
org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:96)
org.gradle.internal.invocation.GradleBuildController.configure(GradleBuildController.java:83)
org.gradle.tooling.internal.provider.runner.ClientProvidedBuildActionRunner.run(ClientProvidedBuildActionRunner.java:70)
org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)
org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.run(RunAsBuildOperationBuildActionRunner.java:50)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:45)
org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51)
org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:47)
org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:44)
org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:79)
org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:44)
org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39)
org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25)
org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:80)
org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:53)
org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:62)
org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:34)
org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)
org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)
org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)
org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)
org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:59)
org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:31)
org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:59)
org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:44)
org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:46)
org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:30)
org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
org.gradle.util.Swapper.swap(Swapper.java:38)
org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:81)
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:295)
org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
java.lang.Thread.run(Thread.java:745)
Hey everyone, the Fabric team is aware of this issue and it will be fixed by a future update to the Crashlytics plugin. Thanks for your feedback!
Same Issue Please fix it as soon as possible ~!!!
I have this Issue too
Same issue please fix it!
I have the same problem.
Have the same issue ☹️
Hi everyone. We really appreciate your patience here, we're aware of the issue and know the cause. It's worth noting that you can safely ignore this warning. The plugin will still work and your builds should complete as normal.
We will get a fix for this in a future release of the plugin. In the meantime, please refrain from "+1" or "me too" comments as they notify a lot of people and don't add much to the discussion.
me too
me too
@bk-ducle @vishrut2207 Don't you guys know how to read ? The guy clearly asked to "REFRAIN" from posting "me too" and you keep doing it.
Me too.
People want their fix, lol. No one likes to see a warning message on their project, especially not people who are taking the trouble to set up Crashlytics.
The Internet has been saying for a few weeks now that the solution is to either downgrade Android Studio or stop using Crashlytics, and no one wants to do either of those things.
I am also having the issue i upgrade to 'io.fabric.tools:gradle:1.26.1' and still having the issue
Sometimes my project stops compiling, the only way is to clean the cache, remove the fabric plugin, compile and add the plugin back and compile again. Is this related? The compiler returns error 1.
Updated to Android Studio 3.3.1.
the same.
io.fabric.tools:gradle:1.27.1
com.android.tools.build:gradle:3.3.1
WARNING: API 'variant.getExternalNativeBuildTasks()' is obsolete
and has been replaced with 'variant.getExternalNativeBuildProviders()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getExternalNativeBuildTasks(), use -
android.debug.obsoleteApi=true on the command line to display a stack trace.
Affected Modules: ap
1.27.1 is bizarrely freezing my macOS. When this happens I need to kill, suffering and slow, the AS to stop the Mac from freezing. This never happened on version 1.27.0.
Folks, we should probably stop adding "me too" comments here. The problem is that the fabrics plugin is not using Gradle 4.9 / AGP 3.3 Task Configuration Avoidance. This issue is already being tracked internally at Fabrics (cause the Fabrics plugin has the same issue), Firebase and Google.
The problem doesn't stop builds from working, it's just that it slows down your android builds, especially when you have many variants. Also, please note that this plugin is not the only major android plugin having the issue, but the community is working hard on implementing this everywhere.
We will soon all enjoy even better build times, let's just give some time to the maintainers to solve the issue and update their plugins. Cheers all !
And meanwhile, I suggest to everybody here to read about Task Configuration Avoidance, you will probably have to upgrade your own custom plugins and build scripts.
typical
@stephanenicolas My project says Gradle sync failed, so I cannot build. The warning is one of the last ones, may I assume that this is due to this problem? Then how can I at least sync the gradle? Thanks!
Screenshot below:

No, it's not the reason why your sync is failing. These are just warnings. Look your build time to find your issue.
@stephanenicolas My project says
Gradle sync failed, so I cannot build. The warning is one of the last ones, may I assume that this is due to this problem? Then how can I at least sync the gradle? Thanks!Screenshot below:
possible. u updated your android studio to 3.3.2, need to back up it to 3.2.1
@sawyerhard
Yes, this is what I did indeed. I have Android Studio v3.3.1.
Isn't what this thread is about? (or not? not sure) I see that the OP mentions * Android Studio 3.3.0.
Downgrading is not that easy, is a solution from firebase-android-sdk pending? Unless you say that the problems are related to other libraries too and not only this one, so I will have to wait for long. Is this the situation?
Thanks again.
@sawyerhard
Yes, this is what I did indeed. I have
Android Studio v3.3.1.Isn't what this thread is about? (or not? not sure) I see that the OP mentions
* Android Studio 3.3.0.Downgrading is not that easy, is a solution from
firebase-android-sdkpending? Unless you say that the problems are related to other libraries too and not only this one, so I will have to wait for long. Is this the situation?Thanks again.
yeah, we're all waiting, when they'll fix this :) yesterday i got the same problem and i couldn't build my project, because I accidentally updated my project to 3.3.2.
@sawyerhard @afilp If you can't even build the project then most likely your fabric gradle dependencies are outdated.
You should probably update them to : classpath 'io.fabric.tools:gradle:1.27.0'
@113408 Thanks, I already had this classpath 'io.fabric.tools:gradle:1.27.1'. The sync is the problem.
com.android.tools.build:gradle:3.3.1,
io.fabric.tools:gradle:1.27.1,
com.crashlytics.sdk.android:crashlytics:2.9.5@aar
I know it is safe but it is a bit annoying.
Is there a way to I can suppress the warning?
com.android.tools.build:gradle:3.3.1, io.fabric.tools:gradle:1.27.1, com.crashlytics.sdk.android:crashlytics:2.9.5@aarI know it is safe but it is a bit annoying.
Is there a way to I can suppress the warning?
u can downgrade your version:
com.android.tools.build:gradle:3.2.1
io.fabric.tools:gradle:1.25.4
i have no warnings at this versions
About the sync problem, I fixed this with deleting the .idea folder and restarting Android Studio.
Actually, here are the instructions:
https://stackoverflow.com/questions/28668252/android-studio-error-unsupported-modules-detected-compilation-is-not-supported/49397748#49397748
apply plugin: 'io.fabric'
Comment or remove fabric plugin, Error will resolve.
Me too ;)
Don't remove apply plugin: 'io.fabric' because your Crashlytics will stop working.
Just wait for the update in which they will fix the issue.
@CrashlyticsTeam any updates on when can we expect the update?
If I remove the Fabric plugin and keep integrated with Crashlytics via Firebase, will it also stop tracking the crashes?
when it will be fixed?
No, the best solution is to ignore the warning.
EDIT: I replied to a comment that has been deleted. Expand below if you want to see it.
On Tue, Mar 5, 2019, 1:11 AM IMLUNCH notifications@github.com wrote:
The best solution is downgrade to 3.2.1?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/firebase/firebase-android-sdk/issues/198#issuecomment-469479819,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGpvBZ5LHipAqDVgEK-QFQ-cTzCPEgtKks5vTbYkgaJpZM4aAKR5
.
meee tooo
No, the best solution is to ignore the warning.
…
On Tue, Mar 5, 2019, 1:11 AM IMLUNCH @.*> wrote: The best solution is downgrade to 3.2.1? — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#198 (comment)>, or mute the thread https://github.com/notifications/unsubscribe-auth/AGpvBZ5LHipAqDVgEK-QFQ-cTzCPEgtKks5vTbYkgaJpZM4aAKR5 .
you can't ignore this on current gradle version, because android studio willn't build project (
@sawyerhard Which Gradle version? Which AGP version? I have no problems with AGP 3.4.0-beta05 and Gradle 5.1.1.
you need to include the code in your project's gradle.properties file:
android.debug.obsoleteApi=true
I solved it in the following way:
Comment apply plugin: 'io.fabric'
then add maven {
url 'https://maven.fabric.io/public'
}
Synchronize again
Clean and rebuild the project
and finally the unpleasant apply plugin: 'io.fabric' and ready
This in Android Studio 3.3.1
Wat?
This is just a warning and it won't make your build fail.
apply plugin: 'io.fabric' AND IT IS NOT A SOLUTION !@afilp Your build fail error is not related to this warning, you must have had a different problem.
@wonsuc Indeed, it was a different problem eventually. I noted this here: https://github.com/firebase/firebase-android-sdk/issues/198#issuecomment-467791198
me too
Kevin from Crashlytics here - this has been fixed in the latest release of the Fabric gradle plugin, 1.28.0, which went live today.
Have this in your top-level build.gradle:
```
buildscript {
// ... repositories, etc. ...
dependencies {
// ...other dependencies ...
classpath 'io.fabric.tools:gradle:1.28.0'
}
}
```
Thanks @kevinkokomani !
i get the same problem..
WARNING: API 'variant.getExternalNativeBuildTasks()' is obsolete and has been replaced with 'variant.getExternalNativeBuildProviders()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getExternalNativeBuildTasks(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
Affected Modules: app
i get the same problem..
WARNING: API 'variant.getExternalNativeBuildTasks()' is obsolete and has been replaced with 'variant.getExternalNativeBuildProviders()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getExternalNativeBuildTasks(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
Affected Modules: app
Look at what the man just said .. use Fabric plugin v1.28.0 .. just upgrade to v1.28.0 .. and it works fine .. no more warnings ..
Upgrading to classpath 'io.fabric.tools:gradle:1.28.1' , I can still see this issue:
"
WARNING: API 'variantOutput.getPackageApplication()' is obsolete and has been replaced with 'variant.getPackageApplicationProvider()'.
It will be removed at the end of 2019.
"
Upgrading to
classpath 'io.fabric.tools:gradle:1.28.1', I can still see this issue:"
WARNING: API 'variantOutput.getPackageApplication()' is obsolete and has been replaced with 'variant.getPackageApplicationProvider()'.
It will be removed at the end of 2019.
"
classpath 'io.fabric.tools:gradle:1.28.0' solved issues for me.
Solved: Following fixed warning for me.
Android 3.4
classpath 'com.android.tools.build:gradle:3.4.0'
classpath 'io.fabric.tools:gradle:1.29.0'
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.0'
@hamza1886 Seems to help.
You don't need to update the gradle plugin though.
Also, you are supposed to add transitive = true , meaning:
implementation('com.twitter.sdk.android:twitter:3.3.0@aar') {
transitive = true
}
I now get a different message, but I don't think it's the same issue. Probably not related at all:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Its fixed. you just need to uptade the classpath to classpath 'io.fabric.tools:gradle:1.28.0' or above.
@yattabr There is already a newer version:
classpath 'io.fabric.tools:gradle:1.29.0'
Can be found here:
https://docs.fabric.io/android/changelog.html#fabric-gradle-plugin
@yattabr There is already a newer version:
classpath 'io.fabric.tools:gradle:1.29.0'Can be found here:
https://docs.fabric.io/android/changelog.html#fabric-gradle-plugin
Nice! Thank you 👍
Hello, I'm facing an issue that my gradle doesn't find the new fabric tools.
Could not find io.fabric.tools:gradle:1.29.0.
In your build.gradle project level have you added the fabric repo?
`buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
//......
}
}`
Most helpful comment
Hey everyone, the Fabric team is aware of this issue and it will be fixed by a future update to the Crashlytics plugin. Thanks for your feedback!