gradle 1.12
Fedora 20
我第一次使用gradle来构建我的java程序。我正在使用emacs,因为我不喜欢使用eclipse。因为我喜欢在cmd线上做所有事情。
Gradle希望在src / main / java下找到你的生产源代码,在src / test / java下找到你的测试源代码。另外,src / main / resources下的任何文件
我想知道是否有一个命令我可以在gradle中使用它来自动创建这个项目结构?
我可以写一个脚本文件,但在我这样做之前,我想知道gradle是否可以做到。
非常感谢,
答案 0 :(得分:7)
目前还没有内置的方法来创建目录结构,但gradle init
可能会在某些时候处理这个问题。
更新:现在可通过Gradle init plugin
获取。
示例用法是:
gradle init --type java-library
答案 1 :(得分:3)
您可以使用gradle-templates
,
第1步:将模板插件添加到build.gradle
group 'com.hireartists.consumer.repository'
version '1.0-SNAPSHOT'
apply plugin: 'java'
apply plugin: 'idea'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile 'org.springframework:spring-webmvc:4.2.1.RELEASE'
compile 'org.apache.kafka:kafka_2.10:0.8.2.2'
compile 'javax.servlet:jstl:1.2'
testCompile group: 'junit', name: 'junit', version: '4.11'
}
buildscript {
repositories {
maven {
url 'http://dl.bintray.com/cjstehno/public'
}
}
dependencies {
classpath 'gradle-templates:gradle-templates:1.5'
}
}
apply plugin:'templates'
第2步:查看您需要的任务
./gradlew 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.
第3步:应用任务
./gradlew initWebappProject
> Building 0% > :initWebappProject
templates> Use Jetty Plugin? (Y|n) [n] n
:initWebappProject
BUILD SUCCESSFUL
Total time: 12.057 secs
第4步:您现在可以看到文件夹结构
prayag-top:hire-artists-consumer prayagupd$ ll src/main/
total 0
drwxr-xr-x 2 prayagupd staff 68 Oct 31 12:48 java
drwxr-xr-x 2 prayagupd staff 68 Oct 31 12:48 resources
drwxr-xr-x 3 prayagupd staff 102 Oct 31 12:48 webapp
更多阅读https://github.com/townsfolk/gradle-templates#installation