[英]Migrating project to new experimental gradle plugin
我尝试将我的Android项目迁移到新的实验性gradle插件。 我按照此页面上的说明操作。 我对所需文件进行了更改,但是当我尝试使用gradle文件同步项目时出错。
错误:无法加载类'com.android.build.gradle.managed.ProductFlavor_Impl'。 此意外错误的可能原因包括:
在损坏的Gradle进程的情况下,您还可以尝试关闭IDE,然后终止所有Java进程。
- Gradle的依赖缓存可能已损坏(这有时会在网络连接超时后发生。)重新下载依赖项并同步项目(需要网络)
- Gradle构建过程(守护程序)的状态可能已损坏。 停止所有Gradle守护进程可以解决此问题。 停止Gradle构建过程(需要重启)
- 您的项目可能正在使用第三方插件,该插件与项目中的其他插件或项目请求的Gradle版本不兼容。
我的app
文件夹中的build.gradle
与此非常相似:
apply plugin: 'com.android.model.application'
apply plugin: 'maven'
repositories {
maven {
url = getBaseRepository()
credentials {
username = NEXUS_USERNAME
password = NEXUS_PASSWORD
}
}
mavenCentral()
}
def int CACHE_LIMIT = CACHE_CHANGING_MODULES_FOR_SECONDS.toInteger()
configurations.all {
resolutionStrategy.cacheChangingModulesFor CACHE_LIMIT, 'seconds'
}
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.0"
defaultConfig.with {
applicationId = "<myRealAppIdIsHere>"
minSdkVersion.apiLevel = 14
targetSdkVersion.apiLevel = 18
multiDexEnabled = true
}
}
android.buildTypes {
debug {
/*buildConfigField.with {
create() {
type = "boolean"
name = "DEBUG_BUILD"
value = rootProject.ext.debugBuild
}
}*/
}
release {
minifyEnabled = false
proguardFiles += 'proguard-rules.pro'
/*buildConfigField.with {
create() {
type = "boolean"
name = "DEBUG_BUILD"
value = rootProject.ext.releaseBuild
}
}*/
}
}
}
dependencies {
// my dependencies are here...
}
有人知道问题出在哪里吗? 我不知道为什么错误消息包含有关ProductFlavor的问题,因为我的项目没有味道......
UPDATE
我试图清理我的项目 - 清理不成功,但清理期间的错误消息更具体:
错误:(10,1)配置项目':app'时出现问题。 执行模型规则时抛出异常:com.android.build.gradle.model.BaseComponentModelPlugin $ Rules#createVariantData(org.gradle.model.ModelMap,org.gradle.model.ModelMap,com.android.build.gradle.internal.TaskManager )> afterEach()无法解析配置':app:_debugCompile'的所有依赖项。 执行模型规则时抛出异常:model.android无法设置readonly属性:类的minSdkVersion:com.android.build.gradle.managed.ProductFlavor_Impl
但我仍然不知道如何解决它。
如果这不是项目中的真实文件,请确保您具有:
minSdkVersion.apiLevel
targetSdkVersion.apiLevel
代替:
minSdkVersion
targetSdkVersion
我有同样的问题,这解决了它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.