iam*_*der 5 android-studio build.gradle android-gradle-plugin android-gradle-2.2
我正面临一个关于 Gradle 源集的奇怪问题。我怀疑这个问题属于 Android Studio。我的 Gradle 文件定义了 4 种产品风格和 4 种源集,包括主要的。我的活动文件放在不同的源集中,但不在主源集中。但是,当我从任何源集打开活动文件时,Android studio 显示:“在文件中找到重复文件...请参阅其他源集文件。”由于主源集中没有该文件的副本,因此不应出现此消息。但是,我可以使用任何产品风格构建和运行,并根据源代码集正常工作。
我的 gradle 文件如下所示:
defaultConfig {
applicationId "com.x.y.z"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
productFlavors {
design {
resValue("string", "app_name", "App Design")
applicationIdSuffix ".design"
versionNameSuffix "-design"
}
dev {
resValue("string", "app_name", "App Dev")
applicationIdSuffix ".dev"
versionNameSuffix "-dev"
}
prod {
resValue("string", "app_name", "App Prod")
applicationIdSuffix ".prod"
versionNameSuffix "-prod"
}
playStore {
resValue("string", "app_name", "Real App Name")
}
}
sourceSets {
main {
java.srcDirs = ['src/main/java']
res.srcDirs = ['src/main/res']
assets.srcDirs = ['src/main/assets']
}
design {
java.srcDirs = ['src/design/java']
res.srcDirs = ['src/design/res']
assets.srcDirs = ['src/design/assets']
}
dev {
java.srcDirs = ['src/dev/java']
res.srcDirs = ['src/dev/res']
assets.srcDirs = ['src/dev/assets']
}
prod {
java.srcDirs = ['src/prod/java']
res.srcDirs = ['src/prod/res']
assets.srcDirs = ['src/prod/assets']
}
}
Run Code Online (Sandbox Code Playgroud)
源目录如下所示:
src
--androidTest
--design
--assets
--java
--res
--dev
--assets
--java
--res
--main
--assets
--java
--res
--prod
--assets
--java
--res
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
902 次 |
| 最近记录: |