Gradle探索(2)-构建项目

夏侯承恩
2023-12-01

创建项目

1.新建一个 Dynamic Web Project

2.在项目根目录下新建 build.gradle 文件

3.右键项目Configure-Convert to Gradle Project,再次右键Gradle-Refersh All

4.右键项目Java EE Tools-Generate Deployment Descriptor Stub

build.gradle文件如下所示

import org.gradle.plugins.ide.eclipse.model.Facet
 
apply plugin: 'maven'
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'eclipse-wtp'

version = "1.0" // 设置Project版本
sourceCompatibility = 1.6   // 设置 JDK 版本
webAppDirName = 'WebContent'    // 设置 WebApp 根目录
sourceSets.main.java.srcDir '/src/main/java'   // 设置 Java 源码所在目录
 
 
// 设置 maven 库地址
repositories {  
    //mavenCentral() // 中央库
    maven { url 'http://127.0.0.1:8081/nexus/content/repositories/public' } // 自定义库地址
}
 
// 设置依赖
dependencies {
    compile (  
            "javax.servlet:servlet-api:2.5",
            "javax.servlet:jstl:1.2",
            "junit:junit:4.11",
        ) 
}
 
// 设置 Project Facets
eclipse {
    wtp {
        facet {
            facet name: 'jst.web', type: Facet.FacetType.fixed
            facet name: 'wst.jsdt.web', type: Facet.FacetType.fixed
            facet name: 'jst.java', type: Facet.FacetType.fixed
            facet name: 'jst.web', version: '2.5'
            facet name: 'jst.java', version: '1.6'
            facet name: 'wst.jsdt.web', version: '1.0'
        }
    }
}

[compileJava,javadoc,compileTestJava]*.options*.encoding = 'UTF-8' //解决编译Java时出现的  警告:编码 GBK 的不可映射字符

 

build.gradle解析

1.使用插件

apply plugin: 'maven'
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'eclipse-wtp'
默认情况下,Gradle会在src/main/java中查找你的源码,在src/test/java中查找你的测试代码,而src/main/resources下的文件都会被打包,src/test/resources下的文件会被包含在classpath中用于测试。所有输出的文件都保存在build目录里,而生成的jar包则是在build/libs里面。

2.外部依赖

通过以下代码来添加仓库:

// 设置 maven 库地址
repositories {  
    //mavenCentral() // 中央库
    maven { url 'http://127.0.0.1:8081/nexus/content/repositories/public' } // 自定义库地址
}
然后再通过下面代码添加依赖:

// 设置依赖
dependencies {
    compile (  
            "javax.servlet:servlet-api:2.5",
            "javax.servlet:jstl:1.2",
            "junit:junit:4.11",
        ) 
}

3.自定义项目

version = "1.0" // 设置Project版本
sourceCompatibility = 1.6   // 设置 JDK 版本
webAppDirName = 'WebContent'    // 设置 WebApp 根目录
sourceSets.main.java.srcDir '/src/main/java'   // 设置 Java 源码所在目录

构建项目

当执行gradle build 时,Gradle会执行编译,测试,并且将源文件和资源文件打成jar包。

除了build之外,还有几个常用的任务,如下:

clean:删除build目录和其他构建时生成的文件。

assemble:编译并打包,但不执行单元测试。不过一些其他插件可能会增强这个任务,例如 War 插件会再打出war包。

check:编译并测试代码。其他插件可能会增强这个任务。比如 Code-quality 插件会让这个任务去执行Checkstyle。


 类似资料: