在Gradle文件夹下面有个子文件夹samples/java/quickstart,里面包含了一个sample项目,用于学习如何用Gradle对其进行构建。
项目工程层级结构如下:
Gradle默认会从src/main/java 搜寻打包源码,在 src/test/java 下搜寻测试源码。并且 src/main/resources下的所有文件按都会被打包,所有 src/test/resources 下的文件 都会被添加到classpath用以执行测试。所有文件都输出到 build 下,打包的文件输出到 build/libs 下。
plugins {
id 'java'
}
apply plugin: 'java'
version = '1.0'
jar {
manifest {
attributes 'Implementation-Title': 'Gradle Quickstart',
'Implementation-Version': archiveVersion
}
}
repositories {
mavenCentral()
}
dependencies {
implementation group: 'commons-collections', name: 'commons-collections', version: '3.2.2'
testImplementation group: 'junit', name: 'junit', version: '4.+'
}
test {
systemProperties 'property': 'value'
}
uploadArchives {
repositories {
flatDir {
dirs 'repos'
}
}
}
第2行申明了标准插件java的使用。在下面这个链接里能查询到所有Gradle标准的插件:
第15行的repository,声明了Maven中央仓库的使用。
详细工作原理参考我这篇文章:build.gradle里repositories的mavenCentral实现原理解析
第19行的dependencies标签,实现原理参考我的文章build.gradle里dependencies标签页的实现原理
第24行的test标签实现原理:build.gradle里test标签的实现原理
第28行:build.gradle里uploadArchives标签的实现原理
要获取更多Jerry的原创文章,请关注公众号"汪子熙":