I\'ve problems to migrate my project to the newest Gradle 4.0 + Android Studio 3 version, which gives me all kind of errors. Little by little I managed to sort them all out
Possible workaround is create in all modules missing buildTypes, but it's crazy messing code when Google planed create a sollution for it. More info in: https://issuetracker.google.com/issues/62170415 as me (but deleted by moderator) and you mention.
But there is second (same but much cleaner) solution:
add this to your top project build.gradle
subprojects {
afterEvaluate {project ->
if (project.hasProperty("android")) {
android {
buildTypes {
YOUR_MISSING_BUILD_TYPES {
BUILD_TYPE_PARAMS_OR_EMPTY
}
}
}
}
}
}
EDIT: 2017-07-12
It's finally fixed in classpath 'com.android.tools.build:gradle:3.0.0-alpha6'
.
You can use new DSL: https://issuetracker.google.com/issues/62241369
android {
buildTypeMatching 'staging', 'debug'
productFlavorMatching 'color', 'blue', 'cyan'
}
Don't forgot to remove above workaround before build project!
EDIT: 2017-07-18
There is official documentation: https://issuetracker.google.com/issues/62241369
To resolve this error, you need to specify which build type from "mylibrary" the Android plugin should match to the app's "staging" build type. You can do this with the buildTypeMatching property in the app's build.gradle file, as shown below:
// Add the following to the consumer's build.gradle file.
android {
...
// Tells the Android plugin to use a library's 'debug' build type
// when a 'staging' build type is not available. You can include
// additional build types, and the plugin matches 'staging' to the
// first build type it finds from the one's you specify. That is,
// if 'mylibrary' doesn't include a 'debug' build type either, the
// plugin matches 'staging' with the producer's 'release' build type.
buildTypeMatching 'staging', 'debug', 'release'
}
EDIT: 2017-09-06
buildTypeMatching
has been removed from AS beta 4.
now use matchingFallbacks
.
see: https://stackoverflow.com/a/46038946/4594990