转载

0104 gradle入门

背景

gradle的官网是 www.gradle.org,标题介绍是: accelerate developer productivity,翻译过来:提高开发者的生产率;

三大特征

  1. Build Anything(构建一切)

你可以选择使用Java,C++,Python语言,单仓库或者多仓库,gradle可以在任何平台上部署打包,这都是依赖于gradle的无比灵活来构建的;

  1. Automate Everything(自动化一切)

使用gradle丰富的API和成熟的插件生态,建模,集成,系统化各种软件。整合这些插件可以完成有目的的自动化。

  1. Deliver Faster(极速交付)

优雅,极速的构建,从编译忽略到高级的缓存,甚至更多,gradle追求持续的性能,保证你的团队可以持续交付;

安装步骤

步骤如下:

cd ~
wget https://downloads.gradle-dn.com/distributions/gradle-6.0.1-all.zip
unzip gradle-6.0.1-all.zip
mv gradle-6.0.1 gradle
cd gradle/bin
pwd 
EXPORT PATH=$PATH:/usr/tool/gradle/bin
gradle 
rm -rf /usr/tool/gradle-6.0.1-all.zip

开始教程

java开发者,主要关注的是java方面的构建,先把自己放空,抛掉maven,从0开始;

java application

基本的java开发;

步骤:

mkdir demo_gradle_application
cd demo_gradle_application
gradle init

0104 gradle入门

settings.gradle.kts 这里配置项目的名称;

build.gradle.kts 这里配置仓库,插件和依赖;

0104 gradle入门

  1. 构建

gradlew build

  1. 测试

测试覆盖报告在

0104 gradle入门

  1. 运行

./gradlew run 最后看到打印出hello world表示成功!

成果:

  • 如何使用gradle生成一个java application;
  • 生成的代码结构;
  • 如何执行gradle构建以及查看测试报告;
  • 如何执行java应用使用run任务通过gradle插件;

代码

java library

java库,可以被其它项目引用或者说复用;

0104 gradle入门

步骤:

  1. gradle init , 选择 library ;
  2. 结构如上图;

同application类型;

settings.gradle.kts 主要设置项目的名字

build.gradle.kts主要配置插件,依赖仓库,依赖;

源码,测试目录同maven的约定;

  1. ./gradlew build 构建jar包;
  2. 定制jar包

定制版本号: 在build.gradle.kts中 增加版本号;

version = "1.0-SNAPSHOT"
然后执行打包,可以得到带版本的jar包;

定制jar包的 library name 和 library version;

在build.gradle.kts中

tasks{
    jar{
        manifest{
            mapOf("Implementation-Title" to project.name , 
            "Implementation-Version" to project.version
            )
        }
    }
}
./gradlew jar
./gradlew javadoc

成果:

  • 生成了java库;
  • 生成文件的目录结构;
  • 执行构建并查看测试报告;
  • 定制生成jar包的版本和name
  • 生成API文档;

java web

使用gradle创建web项目;

目录说明

  • src/main/java java源码目录
  • src/main/webapp 页面目录
  • src/test/java 测试代码目录

步骤:

  1. 引入依赖;
  2. servlet的代码
  3. 引入页面代码
  4. 引入 gretty插件;
  5. 模拟测试servlet, 使用mockito;
  6. 模拟功能测试,使用 webdriverManager, selenium;
  7. 跑测试;

成果:

  • 使用war插件来定义web应用;
  • 添加servlet和JSP;
  • 使用gretty插件部署应用;
  • 使用mockit单元测试;
  • 使用gretty和selenum进行功能测试;

代码: https://github.com/carterbrot...

java springboot

idea中使用gradle

原创不易,转载请注明出处,欢迎沟通交流。

原文  https://segmentfault.com/a/1190000021488982
正文到此结束
Loading...