gradle多项目构建
来源:互联网 发布:软件专业论文题目 编辑:程序博客网 时间:2024/05/29 15:16
由于最近在研究多项目构建,查阅了一些博客,感觉不如索性自己看看文档,原文在https://guides.gradle.org/creating-multi-project-builds/,另附两个链接,
github上有些gradle的项目,供参考,https://github.com/gradle,
官网上还有一些英文书籍,https://gradle.org/books/。
下为正文。
1. 创建根项目
1.1 创建项目,执行以下命令
C:\Users\Administrator>d:D:\>cd D:\personalD:\personal>mkdir creating-multi-project-buildsD:\personal>cd creating-multi-project-buildsD:\personal\creating-multi-project-builds>gradle initBUILD SUCCESSFUL in 1s2 actionable tasks: 2 executed
1.2 去掉settings.gradle中自动生成的文件,只留下rootProject.name = ‘creating-multi-project-builds’
1.3 在多项目中,可以在最顶层(根目录下)的构建文件中配置尽可能多的通用属性,让子项目管理自己所需的属性。
1.4 当不带任何参数执行inti task的时候,会生成一个build.gradle文件,文件中注释的内容是一个基本的Java构建配置。
将其中内容替换成下面内容(配置通用的资源库),
allprojects { repositories { jcenter() }}
1.5 allprojects 中可以配置一些系统属性,被整个子项目以及根项目使用。类似的,subprojects中可以配置一些属性,只能
被子项目使用,例如,为子项目设置统一的版本号,即可在根目录下的build.gradle中设置,
subprojects { version = '1.0'}
2. 创建子项目
2.1 创建greeting-library子项目,控制台执行下面命令,
mkdir greeting-library
在文件下创建build.gradle文件,在文件中添加对groovy的依赖,
apply plugin : 'groovy'dependencies { compile 'org.codehaus.groovy:groovy:2.4.10' testCompile 'org.spockframework:spock-core:1.0-groovy-2.4', { exclude module : 'groovy-all' }}
修改根目录下的settings.gradle文件,使greeting-library成为多项目构建的一部分。
include 'greeting-library'
在greeting-library增加文件夹src/main/groovy/greeter和src/test/groovy/greeter(这块我是手动创建的),
$ mkdir -p src/main/groovy/greeter$ mkdir -p src/test/groovy/greeter
在src/main/groovy下增加GreetingFormatter类
greeting-library/src/main/groovy/greeter/GreetingFormatter.groovy
package greeterimport groovy.transform.CompileStatic@CompileStaticclass GreetingFormatter { static String greeting(final String name) { "Hello, ${name.capitalize()}" }}
在src/test/groovy中增加GreetingFormatterSpec类
greeting-library/src/test/groovy/greeter/GreetingFormatterSpec.groovy
package greeterimport spock.lang.Specificationclass GreetingFormatterSpec extends Specification { def 'Creating a greeting'() { expect: 'The greeeting to be correctly capitalized' GreetingFormatter.greeting('gradlephant') == 'Hello, Gradlephant' }}
未完待续……
- gradle构建多项目
- Gradle多项目构建
- gradle多项目构建
- 从零开始学习Gradle之三---多项目构建
- 从零开始学习Gradle之三---多项目构建
- 从零开始学习Gradle之三---多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle多项目构建并将项目导入到Eclipse
- Gradle多项目构建并将项目导入到Eclipse
- 从零开始学习Gradle之三---多项目构建
- Gradle——依赖管理和多项目构建
- Gradle入门系列(5):创建多项目构建
- Gradle学习(六)——多项目构建
- Gradle 多项目管理
- Glide加载图片流程源码解析
- Uva 10763 Foreign Exchange
- [BZOJ2171] K凹凸序列
- 动态规划:从新手到专家
- 面试题——Cookie和Session的区别
- gradle多项目构建
- 367. Valid Perfect Square
- 监督学习和非监督学习
- Java学习第十六天
- 虚函数调用 汇编代码
- html、css、js文件加载顺序及执行情况
- Spring配置文件中突然出现异常Referenced file contains errors
- Android O 行为变更(一)
- 谜题2:Time for a change 找零时刻