Android-studio 3.4.0-3.4.2 Gradle ERROR: No value

2020-05-19 19:56发布

问题:

when upgrading to android-studio 3.4.x/gradle build plugin 3.4.x /gradle 5.3 ... wondering if its an issue with the android plugin.

ERROR: No value has been specified for property 'manifestOutputDirectory'.

My gradle script does not use manifest related variables, nor has it changed the manifest. The version before my upgrade is Android-Studio: 3.3/Gradle pulgin: 3.3.2/Gradle: 5.3


First Update(20190508):Fix method(temporary)

Find a temporary fix method, but the method of correcting the error is still unknown. Ways to avoid: I am a Mac OS X system: Click Android Studio->Preperences...->Experimental uncheck: Only sync the active variant.

I have studied the documentation. This feature can improve the compilation speed. If I find the fix method, I still want to continue to check “Only sync the active variant”.


Second Update(20190518):

Looking through some documents did not find a solution.

But probably find some recurring conditions for your reference.

The process of this problem is to take the initiative to start Gradle's project synchronization operation. For example, two places in the figure will occur when clicked. If there is a problem, you need to uncheck "Only sync the active variant."

However, after successfully compiling and installing, check "Only sync the active variant.", this problem will not appear again, even if you change the build.gradle file, the top notification that needs to be synchronized again, do not click "Sync now", directly use run 'app' or debug 'app', Android-studio will automatically perform the synchronization and then compile and run, and this problem will not occur again.

At first I thought that changing the code of build.gradle can correct this problem. Now I feel like Android-studio or gradle-plugin has some problems in executing project sync. I hope that the subsequent version will solve this problem.


Third Update(20190821):

Android-studio 3.5.0/ gradle build plugin 3.5.0/ gradle 5.4.1

Current latest stable version fixed this issue.

Enable “Only sync the active variant” is ok.

回答1:

Click Android Studio->Preperences->Experimental then you have to uncheck - Only sync the active variant.



回答2:

On clean PC installation I tried every trick here and nothing worked. I noticed there was logged message that licence was not accepted. I opened SDK manager, downloaded some packages that prompted me to accept licence and it started to sync.



回答3:

I just upgraded to AS 3.4 and had the same issue. This occurs when cold starting the application. Build > Make Project works fine, as does building from the command-line.



回答4:

Same with @user3407078 answer.

In my case. This is due the Android Studio 3.5 updates, and I haven't installed or accepted the license & agreement for the build tools & SDK platform 29.

Checking the license for package Android SDK Build-Tools 29.0.2 in ~/Library/Android/sdk/licenses
Warning: License for package Android SDK Build-Tools 29.0.2 not accepted.
Checking the license for package Android SDK Platform 29 in ~/Library/Android/sdk/licenses
Warning: License for package Android SDK Platform 29 not accepted.

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> No value has been specified for this provider.

It is recommended to update the latest SDK tools & platform, in this case, version 29. Even we only develop the lower version, it is mandatory step to get working on your Android Studio.

EDITED:

  1. In a rare case, you might wanna also disable Gradle feature here thx @waqas-khalid-obeidy
  2. Or if you're using a gradlew command-line task, please navigate here for the full explanation. thx @amir-ziarati


回答5:

This happened to me when I got a new laptop and did a fresh install of Android Studio.

I solved this by installing the proper Android SDK version that my project targets. Only API 29 was installed on my new machine when doing a fresh install of Android Studio, but my project targets API 28.

Open the SDK manager and download the proper Android SDK for your app and this error should resolve itself.



回答6:

In my case the problem was I opted in for incremental option

To solve the problem

open gradle.properties file and remove line

kapt.incremental.apt=true   //remove or comment this line


回答7:

Could be missing Java JDK, might want to check tha



回答8:

for my case it was because some sdk licenses were not accepted. i figured it out when i ran the gradlew through the command line. the link below shows you how to accept all the licenses through sdkManager tool.

You have not accepted the license agreements of the following SDK components