如何使用Gradle创建如maven那样的项目结构呢 ?
gradle不像maven那样有固定的项目结构,gradle原声API是不支持的,要想做到这一点,我们可以自定义一个task。
1. 创建一个createJavaProject文件夹
2. 在此目录下创建gradle的构建脚本,build.gradle,内容如下:
apply plugin: 'java'
task "create-dirs" << {
sourceSets*.java.srcDirs*.each { it.mkdirs() }
sourceSets*.resources.srcDirs*.each { it.mkdirs() }
}
3. 命令行运行 gradle create-dirs
另外一种方法,我们可以使用三方插件templates。
1. gradle templates 插件可以轻松的创建项目结构,http://tellurianring.com/wiki/gradle/templates,但是最新版本gradle1.0好像安装不上,不知道什么问题,我们也可以使用其他方式用上这个插件。
2. 下载最新的templates-xx.jar,https://launchpad.net/gradle-templates/+download 放在gradle 的lib/plugins目录下面。
3. 建个项目文件夹createJavaProject, 新建gradle构建脚本build.gradle,内容如下:
buildscript{
repositories {
flatDir dirs: "${gradle.gradleHomeDir}/lib/plugins"
}
dependencies {
classpath ':templates:1.2'
}
}
apply plugin: 'templates'
4. 执行gradle tasks, 就会看到如下tasks:
Template tasks -------------- createGradlePlugin - Creates a new Gradle Plugin project in a new directory named after your project. createGroovyClass - Creates a new Groovy class in the current project. createGroovyProject - Creates a new Gradle Groovy project in a new directory named after your project. createJavaClass - Creates a new Java class in the current project. createJavaProject - Creates a new Gradle Java project in a new directory named after your project. createScalaClass - Creates a new Scala class in the current project. createScalaObject - Creates a new Scala object in the current project. createScalaProject - Creates a new Gradle Scala project in a new directory named after your project. createWebappProject - Creates a new Gradle Webapp project in a new directory named after your project. exportAllTemplates - Exports all the default template files into the current directory. exportGroovyTemplates - Exports the default groovy template files into the current directory. exportJavaTemplates - Exports the default java template files into the current directory. exportPluginTemplates - Exports the default plugin template files into the current directory. exportScalaTemplates - Exports the default scala template files into the current directory. exportWebappTemplates - Exports the default webapp template files into the current directory. initGradlePlugin - Initializes a new Gradle Plugin project in the current directory. initGroovyProject - Initializes a new Gradle Groovy project in the current directory. initJavaProject - Initializes a new Gradle Java project in the current directory. initScalaProject - Initializes a new Gradle Scala project in the current directory. initWebappProject - Initializes a new Gradle Webapp project in the current directory.
5. gradle createJavaProject创建java项目的项目目录结构。
Gradle 创建 Java 项目结构
本文介绍如何通过 Gradle 构建工具自定义任务来创建类似于 Maven 的 Java 项目结构,包括两种方法:一是通过编写自定义的任务脚本;二是利用第三方插件 templates 实现更为丰富的项目模板创建。

3万+

被折叠的 条评论
为什么被折叠?



