gpt4 book ai didi

android - 将 gradle-tool 更新到 3.1.0-beta3 或 3.2.0-alpha03 后出现新错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:01:28 25 4
gpt4 key购买 nike

只是一个具有“prod”和“mock”风格的普通项目

在 app/build.gradle 中:

 sourceSets {
main.java.srcDirs += "blabla bla"
test.java.srcDirs += "blabla bla"
androidTest.java.srcDirs += "blabla bla"

prodDebug.java.srcDirs += "blabla bla"
mockDebug.java.srcDirs += "blabla bla"

prod.java.srcDirs += "blabla bla"
testProd.java.srcDirs += "blabla bla"
androidTestProd.java.srcDirs += "blabla bla"

mock.java.srcDirs += "blabla bla"
testMock.java.srcDirs += "blabla bla"
androidTestMock.java.srcDirs += "blabla bla"
}

在 Android Studio 中点击“运行”:

出了点问题:

Error:org.gradle.api.GradleException: The SourceSet 'mockDebug' is not recognized by the Android Gradle Plugin. Perhaps you misspelled something?

但是,我可以执行 "./gradlew clean build"或 "./gradlew assembleProd installProdDebug"

但是,如果我在命令行中这样做,应用程序无法完全构建,它可以在目标设备上安装应用程序,但应用程序会像 "xxxx.dex" 问题一样崩溃.

issue

最佳答案

将Gradle Plugin从3.0.1更新到3.1.0后遇到同样的问题。似乎 Gradle 现在只能找到在 Android Studio 中选择的变体的源集。

目前修复它的解决方法是删除 sourceSets {} block 并改为添加:

def customSourceSets = [
myFirstBuildVariant: 'src/myFirstBuildVariant',
mySecondBuildVariant: 'src/mySecondBuildVariant',
]

android.applicationVariants.all {
if (customSourceSets.containsKey(name)) {
sourceSets.find { it.name == name }.setRoot(customSourceSets.get(name))
}
}

关于android - 将 gradle-tool 更新到 3.1.0-beta3 或 3.2.0-alpha03 后出现新错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48846879/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com