Intellij IDEA gradle项目目录介绍
Gradle简介
Java的构建,经历了从Ant-->Maven->Gradle的过程,每一次的进步,都是为了解决之前的工具带来的问题:
- Ant:Ant的功能虽然强大,但过于灵活,规范性不足,对目录结构及build.xml没有默认约定,且没有统一的项目依赖管理。
- Maven:Maven解决了规范性的问题,也顺带解决了依赖项统一管理的问题,但由于规范性太强,灵活性不足,pom.xml采用Xml结构,项目一大,Xml就显得冗长。
- Gradle:综合了Ant和Maven的优点,吸收了Ant中task的思想,然后把Maven的目录规范以及仓库思想也融合了进来,但允许用户自由的修改默认的规范(如,可随意修改源码目录),配置文件则采用Groovy语言来书写,Groovy是一门可编程语言,配置文件本身就可以视为一份源代码,并最终交由Gradle来处理执行。
目录结构

build.gradle: 这个文件是整个项目的构建脚本,脚本中内容是以Groovy语言来书写的。
范例:
buildscript {//运行首先执行这段代码
ext {//用于定义动态属性
//sringBootVersion 变量的定义
springBootVersion = '2.0.0.RELEASE'
}
repositories {
//mavenCentral() //官方的中央仓库
maven { //自定义中央仓库 下面是引用阿里的maven中央仓库
url 'http://maven.aliyun.com/nexus/content/groups/public'
}
}
dependencies {//依赖,下面是依赖springboot的一个插件
//${springBootVersion} 就是引用上面动态属性的变量
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
//使用了的插件
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
group = 'com.youngman'
version = '0.0.1-SNAPSHOT'//项目的版本号,用户可以自定义
sourceCompatibility = 1.8//JDK的版本
repositories {
//mavenCentral()
maven {
url 'http://maven.aliyun.com/nexus/content/groups/public'
}
}
//依赖
dependencies {
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('org.springframework.boot:spring-boot-starter-security')
compile('org.springframework.boot:spring-boot-starter-web')
testCompile('org.springframework.boot:spring-boot-starter-test')
testCompile('org.springframework.security:spring-security-test')
}
gradlew: gradlew环境的脚本,我们执行就会完成环境一个搭建
build: gradlew 项目构建之后自动生成的一个目录
gradle: 里面有个子目录 wrapper项目成员没有安装gradle就会自动安装gradle,好处就是统一gradle的版本
src: 项目源码,包含程序源码和测试源码
.idea: 存放项目的配置信息。这个文件夹是自动生成,版本控制信息等,包括历史记录
settings.gradle: 针对module的全局配置,它的作用域所包含的所有module是通过settings.gradle来配置
Intellij IDEA gradle项目目录介绍的更多相关文章
- vue项目目录介绍
Vue项目目录 初始化项目 vue init webpack []projectname] cd [projectname] npm install vue run dev 目录树 +---build ...
- Vue框架(三)——Vue项目搭建和项目目录介绍、组件、路由
Vue项目环境搭建 1) 安装node,在官网下载好,然后在本地安装 官网下载安装包,傻瓜式安装:https://nodejs.org/zh-cn/ 2) 换源安装cnpm >: npm ins ...
- SpringBoot学习笔记(二)——Springboot项目目录介绍
官网生成SpringBoot项目 使用官网(https://start.spring.io/)生成一个Maven构建的的SpringBoot项目,下载下来的文件是这个样子的. 导入到IDEA中 为了查 ...
- Node.js项目目录介绍
新建的项目结构应该是这样 bin:项目的启动文件,也可以放其他脚本. node_modules:用来存放项目的依赖库. public:用来存放静态文件(css,js,img). routes:路由控制 ...
- Django项目目录介绍
一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref模块的图片 一.MTV模型 Django的MTV分别代表: Model(模型):和数据库相关的,负 ...
- Vue音乐播放器(三):项目目录介绍,以及图标字体、公共样式等资源准备
我们所有的开发都是基于修改src下面的目录 里面的文件去做开发即可 stylus的使用是需要下载stylus-loader的包的 渲染效果 配置修改eslintrc.js 配置了webpack.bas ...
- vue 外卖app (1) 项目目录介绍
api 与后台交互文件夹 common 通用资源文件夹 components 非路由组件文件夹 filters 自定义过滤器模块文件夹 mock 模拟数据文件夹 pages 路由组件文件夹 r ...
- gradle项目与maven项目相互转化
gradle这几年发展迅猛,github越来越多的项目都开始采用gradle来构建了,但是并不是所有人都对gradle很熟悉,下面的方法可以把gradle转成maven项目,前提gradle项目目录结 ...
- gradle项目与maven项目相互转化(转)
根据build.gradle和setting.gradle文件生成idea项目: gradle idea gradle这几年发展迅猛,github越来越多的项目都开始采用gradle来构建了,但是并不 ...
随机推荐
- vue PC端页面引入vue-quill-editor富文本插件
项目需要:在添加新类别的弹框中,要在输入框中输入多条描述信息,不同的描述信息要换行输入,输入后点击确定传给后端,接口返回成功后点击查看刚添加的新类别时,描述框中展现多条换行的描述信息也要跟填写时一样( ...
- Mach-O简介及实际应用
一.前言 在正题开始之前,我们先来聊聊iOS中的hook技术.一谈到hook,很多人首先想到的是runtime,runtime确实强大,但是它存在很多局限性: 1).侵入性:一旦hook了某个类的 ...
- c# DataTable join 两表连接
转:https://www.cnblogs.com/xuxiaona/p/4000344.html JlrInfodt和dtsource是两个datatable,通过[姓名]和[lqry]进行关联 v ...
- PHP-组合总和
给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的数字可以无限制重复被选 ...
- PHP-在排序数组中查找元素的第一个和最后一个位置
给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果数组中不存在目标值,返回 [ ...
- position: absolute 如果不设置left, right, top, bottom会在什么位置
一般我们设置position: absolute都会一起设置left/right/top/bottom, 但是如果不设置, 布局会是什么样子的呢? 直接上图 1.一个大盒子中4个小盒子, 正常文档流布 ...
- 重新创建redis集群的注意事项
一.重新创建redis集群的注意事项 1.将每个节点下aof.rdb.nodes.conf本地备份文件删除: 2.127.0.0.1:7001> flushdb #清空当前数据库(这一步可以省略 ...
- vue 数字输入组件
index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...
- jedate(日期插件)
首先要引入JQuery,然后引入jedate.css和jedate.js(注:需要把下载好的jedate文件夹整个的放在项目中,不然图标无法显示) 没有把整个文件夹放进去的效果 ...
- 电子商务B2B的发展趋势
B2B的发展趋势 尽管B2B市场发展势头良好,但B2B市场还是存在发育不成熟的一面.这种不成熟表现在B2B交易的许多先天性交易优势,比如在线价格协商和在线协作等还没有充分发挥出来. 报告指出,到200 ...