深入浅出Android Gradle构建系统(二:项目结构)
2016-09-19 10:06
435 查看
这篇主要介绍使用Gradle的Android项目的目录结构,以及在Gradle中的配置
Gradle采用约定优于配置的原则,最简单方式是使用一个默认的目录结构。当然目录结构是可以自己修改的。
默认情况下,android gradle项目的代码都在src目录下,src下会有两个目录main和androidTest,其中main目录下是项目代码,androidTest目录下是测试代码。
src/main/
src/androidTest/
在main和androidTest目录下面,针对不同类型的code,又不会不同的目录。
对于Java和Android的Gradle插件,Java代码和Java资源分别对应了java目录和resources目录。Android插件还需要一些其他的目录和文件,比如
AndroidManifest.xml
res/
assets/
aidl/
rs/
jni/
下面我们来看一下如何更改这些默认的配置。
Android工程,默认情况下,java文件和resource文件分别在src/main/java和src/main/res目录下,在build.gradle文件,andorid{}里面添加下面的代码,便可以将java文件和resource文件放到src/java和src/resources目录下。(注意,如果你在gradle文件中修改了,只需要重新sync一下,gradle会自动创建新的目录,并将对应的文件移动到新的目录下)
[java] view
plain copy
sourceSets {
main {
java {
srcDir 'src/java'
}
resources {
srcDir 'src/resources'
}
}
}
更简便的写法是
[java] view
plain copy
sourceSets {
main.java.srcDirs = ['src/java']
main.resources.srcDirs = ['src/resources']
}
数组里其实是可以指定多个目录,这样就可以将代码和资源放置到多个目录下。
在看一个Android项目的例子:
[java] view
plain copy
android {
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
androidTest.setRoot('tests')
}
}
这里的main code其实使用的就是Android Gradle的默认值,而androidTest不再使用默认的androidTest目录,而是使用tests目录。
这篇先讲到这里,下一篇我会简单的介绍一个gradle的task
Gradle采用约定优于配置的原则,最简单方式是使用一个默认的目录结构。当然目录结构是可以自己修改的。
默认情况下,android gradle项目的代码都在src目录下,src下会有两个目录main和androidTest,其中main目录下是项目代码,androidTest目录下是测试代码。
src/main/
src/androidTest/
在main和androidTest目录下面,针对不同类型的code,又不会不同的目录。
对于Java和Android的Gradle插件,Java代码和Java资源分别对应了java目录和resources目录。Android插件还需要一些其他的目录和文件,比如
AndroidManifest.xml
res/
assets/
aidl/
rs/
jni/
下面我们来看一下如何更改这些默认的配置。
Android工程,默认情况下,java文件和resource文件分别在src/main/java和src/main/res目录下,在build.gradle文件,andorid{}里面添加下面的代码,便可以将java文件和resource文件放到src/java和src/resources目录下。(注意,如果你在gradle文件中修改了,只需要重新sync一下,gradle会自动创建新的目录,并将对应的文件移动到新的目录下)
[java] view
plain copy
sourceSets {
main {
java {
srcDir 'src/java'
}
resources {
srcDir 'src/resources'
}
}
}
更简便的写法是
[java] view
plain copy
sourceSets {
main.java.srcDirs = ['src/java']
main.resources.srcDirs = ['src/resources']
}
数组里其实是可以指定多个目录,这样就可以将代码和资源放置到多个目录下。
在看一个Android项目的例子:
[java] view
plain copy
android {
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
androidTest.setRoot('tests')
}
}
这里的main code其实使用的就是Android Gradle的默认值,而androidTest不再使用默认的androidTest目录,而是使用tests目录。
这篇先讲到这里,下一篇我会简单的介绍一个gradle的task
相关文章推荐
- 深入浅出Android Gradle构建系统(二:项目结构)
- 深入浅出Android Gradle构建系统(二:项目结构)
- 深入浅出Android Gradle构建系统(二:项目结构)
- 深入浅出Android Gradle构建系统(二:项目结构)
- 深入浅出Android Gradle构建系统(三:build task)
- 深入浅出Android Gradle构建系统(一:简介)
- 【Android Studio探索之路系列】之八:Gradle项目构建系统(二):Gradle for Android脚本语法
- 深入浅出Android Gradle构建系统(四:自定义构建过程之配置manifest)
- 深入浅出Android Gradle构建系统(四:自定义构建过程之配置manifest)
- 【Android Studio探索之路系列】之十:Gradle项目构建系统(四):Android Studio项目多渠道打包
- 深入浅出Android Gradle构建系统(一:简介)
- 深入浅出Android Gradle构建系统(三:build task)
- 深入浅出Android Gradle构建系统(三:build task)
- 深入浅出Android Gradle构建系统 (三:build task)
- 深入浅出Android Gradle构建系统(一:简介)
- 深入浅出Android Gradle构建系统(一:简介)
- 深入浅出Android Gradle构建系统(五:build type)
- Android Studio目录结构和Gradle构建Android项目
- 深入浅出Android Gradle构建系统(五:build type)
- 深入浅出Android Gradle构建系统(一:简介)