我已將我的Android項目遷移到Gradle和Android Studio,主要是爲了包含風格。 但是,現在當我創建一個帶有New - > Android Component的片段時,它將文件放在錯誤的目錄中,並且找不到資源。在工作室下的錯誤目錄中創建文件
例如。我下org.idoms.iDomsAndroid.fragments添加一個片段,我得到以下包名稱:
package .........src.org.idoms.iDomsAndroid.fragments;
那麼資源文件被創建下:
/idoms-android/src/main/res/layout/
,而不是
/res/layout
我的gradle文件如下所示:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
dependencies {
compile 'com.google.android.gms:play-services:4.1.+'
compile 'com.android.support:appcompat-v7:+'
compile 'com.android.support:support-v4:+'
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
defaultConfig {
minSdkVersion 8
targetSdkVersion 19
versionCode 6
}
productFlavors {
iDomsTest {
packageName 'org.idoms.iDomsAndroidTest'
}
iDomsAndroidDev {
packageName 'org.idoms.iDomsAndroidDev'
}
iDomsAndroid {
packageName 'org.idoms.iDomsAndroid'
}
}
signingConfigs {
release {
XXX
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
iDomsAndroidDebug.setRoot('product-flavors/iDomsAndroid')
iDomsAndroidRelease.setRoot('product-flavors/iDomsAndroid')
iDomsAndroidDevDebug.setRoot('product-flavors/iDomsAndroidDev')
iDomsAndroidDevRelease.setRoot('product-flavors/iDomsAndroidDev')
iDomsTestDebug.setRoot('product-flavors/iDomsTest')
iDomsTestRelease.setRoot('product-flavors/iDomsTest')
}
println "main: " + android.sourceSets.main.res.srcDirs
android.applicationVariants.all { variant ->
println variant.name + ": " + android.sourceSets[variant.name].res.srcDirs
}
android.productFlavors.all { flavor ->
println flavor.name + ": " + android.sourceSets[flavor.name].res.srcDirs
}
android.buildTypes.all { buildType ->
println buildType.name + ": " + android.sourceSets[buildType.name].res.srcDirs
}
}
有什麼我應該改變,讓IDE再次正常工作?
我在使用Eclipse Studio目錄結構(在根級別爲「src」和「res」)的項目上使用Android Studio時遇到了問題。一旦我採用了maven結構,我有更好的運氣(即移動「src」到「src/main/java」和「res」到「src/main/res」。我終於決定採用Android Studio而不回頭看了對不起,如果這不是你要找的答案 – AndroidGuy
謝謝,我會嘗試,無論如何我還是在使用Idea,所以如果需要的話,新的結構也可以在那裏工作。是否有關於它的官方幫助/手冊應該是,還是僅僅如上所示? –
Android Studio和Gradle大部分可以處理Eclipse風格的目錄結構,但是基於模板的嚮導(如New> Android Component)還不夠聰明。 –