博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gradle之恋-Init插件
阅读量:6720 次
发布时间:2019-06-25

本文共 1233 字,大约阅读时间需要 4 分钟。

概述

Gradle构建项目是基于两个基本概念的:项目和任务。

任何一个Gradle构建项目都是由一个或多个项目组成,而每个项目又是由一个或多个任务组成,每个任务是一个工作单元,它可以是编译、打包、生成JavaDoc、部署等。项目的类型完全取决于你要它做什么,它可以是类库Jar项目、Web项目、Zip项目等。gradle

Init插件

Init插件是Gradle内置的插件,无需配置,它提供了两个任务init和wrapper,前者用于创建Gradle项目,后者用于为项目生成wrapper文件。可用命令查看任务列表:

$ gradle tasks

输出

Gradle Init插件任务

init任务

init任务通过参数type来指定Gradle项目的类型,如pom用于把maven项目转换成Gradle项目,java-application用于创建普通的java应用等,可以通过帮助任务查看任务的相关信息:

$ gradle help --task init

输出

gradle-init-task.png

创建项目

创建java-application

$ gradle init --type java-application

结构

gradle-init-tree.png

  • build.gradle 是构建脚本,一般称作为build script,任务定义、配置等均编辑此文件;

  • wrapper 是用于配置wrapper的;

  • gradlew和gradlew.bat分别是Unix系和windows系的替代gradle的shell;

  • settings.gradle 一般用于多项目的配置;

  • src 是java源代码;

执行任务

查看此项目有哪些任务如上,但上面的命令只能看到有group的,如果查看全部的任务需要使用参数all

$ gradle tasks --all

构建并单元测试

$ gradle build

只构建不执行单元测试

$ gradle build -x test

执行单元测试

$ gradle test

运行

$ gradle run

删除build目录

$ gradle clean

打包

$ gradle jar

遇到的问题

打包或构建成功后,会在build/libs会生成jar包,如gradle-command-line.jar,由于没有指定执行入口,所以执行会包异常:

no main manifest attribute, in build/libs/gradle-command-line.jar

此时需要在build script中指定,编辑build.gradle,在底部添加:

jar {    manifest {        attributes 'Main-Class':'App'    }}

然后打包

$ gradle clean jar

执行jar

java -jar build/libs/gradle-command-line.jar

未完待续....


更多原创文章可关注我的个人博客: 或微信公众账号:zhaiqianfeng

微信公众号:zhaiqianfeng

转载地址:http://ijjmo.baihongyu.com/

你可能感兴趣的文章
【BZOJ】2406 矩阵
查看>>
Tcl internal variables
查看>>
springcloud文章推荐
查看>>
java分享第十四天(TestNG Assert详解)
查看>>
一个JNI的helloworld小demo
查看>>
网络编程总结
查看>>
NIC Bonding: 2 nic port as 1 interface
查看>>
动态代理--jdk和cglib
查看>>
mysql sum count 性能优化 ----测试数据22万条
查看>>
Codeforces707Div2
查看>>
SSM常用pom依赖
查看>>
Python中用datetime包进行对时间的一些操作
查看>>
Web.xml配置详解之context-param
查看>>
WIKI扫盲手册
查看>>
Javascript - ExtJs - 整合百度文章编辑器
查看>>
JS分两种数据类型,你都知道吗?
查看>>
Bash条件判断
查看>>
JSF 2.0 + Ajax hello world example
查看>>
Firefox 插件 FlashGot 创建 Axel 下载任务
查看>>
php中相对路径和绝对路径如何使用(详解)
查看>>