Gradle:修改默认的Build配置文件名方式
作者:chihaihai 发布时间:2023-11-28 20:18:01
Gradle修改默认的Build配置文件名
Gradle默认使用build.gradle作为默认的配置文件文件名。
如果我们在build.gradle文件中编写代码,那么我们在运行任务的时候,不需要指定build文件名。
我们也可以不使用build.gradle,而用另外的文件名来创建build配置文件。
但是更改过后需要在 settings.gradle文件中,给rootProject修改属性值buildFileName:。
这样gradle才识别修改后的文件。
在spring setting.gradle文件中的例子
include "spring-aop"
include "spring-aspects"
include "spring-beans"
include "spring-context"
include "spring-context-support"
include "spring-context-indexer"
include "spring-core"
include "kotlin-coroutines"
project(':kotlin-coroutines').projectDir = file('spring-core/kotlin-coroutines')
include "spring-expression"
include "spring-instrument"
include "spring-jcl"
include "spring-jdbc"
include "spring-jms"
include "spring-messaging"
include "spring-orm"
include "spring-oxm"
include "spring-test"
include "spring-tx"
include "spring-web"
include "spring-webmvc"
include "spring-webflux"
include "spring-websocket"
include "framework-bom"
include "integration-tests"
rootProject.name = "spring"
rootProject.children.each {project ->
project.buildFileName = "${project.name}.gradle" /
}
include 'learn'
配置文件中加入对应buildFileName就万事大吉了。
Gradle配置文件
gradle和maven一样是用来做项目结构管理和jar包管理的
我们来看看如何使用gradle进行项目和jar包管理
1、第一步
新建项目,选择使用Gradle
如果你的idea版本比较低,可能有"use auto-import"选项,勾选他,这样可以实现使用过程中自动加依赖
点击创建,就创建好一个gradle项目了
2、打开新建的项目
在idea的setting中可以看到gradle下载到本地的jar包放的位置
可以修改,建议不要放C盘
3、配置文件build.gradle中怎么配置
3.1 去maven仓库拿jar包的地址
maven中央仓库地址
点进去之后,比如说我要spring的包,那么我就输入spring,选择spring context,选择版本,点进去
将依赖地址放入build.gradle中
3.2build.gradle 文件中各关键字的意义
引用其他模块中的包,和普通的引包
//这个表示当前项目的groupId和版本,自己创建项目的时候设置的
group 'com.wcm'
version '1.0-SNAPSHOT'
// 运行的环境:java环境,idea开发工具
apply plugin: 'java-library'
apply plugin: 'idea'
//java的版本和编码集等信息,这里记得和idea中配置的一样,都使用你自己的java版本
compileJava {
sourceCompatibility = '1.8'
targetCompatibility = '1.8'
options.encoding = 'UTF-8'
}
//指定所使用的的仓库,mavenCentral()表示使用中央仓库
//此时项目中所需要的jar包都会从这个中央仓库下载至本地指定仓库
//你要是不配置,那么默认就是maven的地址
repositories {
mavenCentral()
}
//假如你要使用你们公司自己的中央仓库,那么也可以使用repositories 进行配置
//例如
repositories {
maven { url "http://maven.xxxx.com:8081/repository/maven-public/" }
}
/*
gradle工程所有的jar包的坐标都在dependencies属性内放置
每一个jar包的坐标都有三个基本元素组成:group,name,version
testCompile表示该jar包在测试的时候起作用,该属性为jar包的作用域
我们在gradle里面添加坐标的时候都要带上jar包的作用域
* */
dependencies {
// spring项目管理
implementation group: 'org.springframework', name: 'spring-context', version: '5.3.22'
// 引用不同模块下的包,比如说,我这个模块,
//要引用service模块下的payment-service模块下的所有包,那么我就可以这么写
api project(":service:payment-service")
// 加入要使用我自定义的jar包,我把jar包放入新建的一个 模块名/lib 包下,
//那么我就可以这样去引用我自己lib下的所有".jar"的包
// dir表示地址,includes表示包含那些东西
api fileTree(dir: 'lib', includes: ['*.jar'])
//表示作用域测试环境,只在测试时起作用
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
//也可以使用testCompile,表示只在测试时起作用
//使用group、name、version来设置而已,一样的作用
//testCompile group: 'junit', name: 'junit', version: '4.12'
}
此外build.gradle中还可以给子项目配置,子项目中都需要的就可以配置在这里,如果不是所有子模块(项目)都需要的,那么子模块可以在自己的build.gradle文件中配置
//子项目中的环境,上面那些可以配置的,这里都可以配置,只不过是在子项目中起作用
subprojects{
// 运行的环境:java环境,idea开发工具
apply plugin: 'java-library'
// 添加此插件,即可把项目变成web项目(当然,你得自己创建WEB-INF文件夹和web.xml文件)
apply plugin: 'war'
dependencies {
// testImplementation:表示测试时用到的jar包
testImplementation("org.springframework.boot:spring-boot-starter-test")
}
//java的版本和编码集等信息
compileJava {
sourceCompatibility = '1.8'
}
}
父项目与子项目的build.gradle配置文件
在父项目gradle配置文件中引入的依赖,子模块并不能直接继承获取,这一点和maven不太一样
但是我们只需要把需要给子模块使用的jar包,用作用域包起来就可以实现子模块也可以使用父项目中的jar依赖包了
来源:https://blog.csdn.net/chihaihai/article/details/104776845


猜你喜欢
- 一、什么是锁擦除锁擦除是指虚拟机即时编译器(JIT)在运行时,对一些代码上要求同步,但是被检测到不可能存在共享数据竞争的锁进行擦除。锁擦除的
- Java也提供图像化编程图形化GUI(图形用户界面)GUI1 Graphical User Interface(图形用户接口)2
- 最近在做一个平板的应用,底部的BACK HOME 还有电池WIFI的那一条STATUS_BAR设置全屏后怎么也去不掉,查找资料后,发现一个比
- 项目中肯定会遇到异步调用其他方法的场景,比如有个计算过程,需要计算很多个指标的值,但是每个指标计算的效率快慢不同,如果采用同步执行的方式,运
- 1.概览该教程中,我将向你展示:如何在测试时设置spring boot 日志级别。虽然我们可以在测试通过时忽略日志,但是如果需要诊断失败的测
- 本文为大家分享了CentOS 7下安装JDK8的详细步骤,供大家参考,具体内容如下一、下载JDK 至oracle官网下载,如图所示二、安装J
- 本文实例讲述了C#控制台下多线程实现方法。分享给大家供大家参考。具体如下:class Program{ static void
- 我就废话不多说了,大家还是直接看代码吧~//returnContent为获取到的返回参数System.out.println(returnC
- Webview打开本地图片选择器十分之麻烦,其在安卓系统3x 4x 5x上的行为都不同,处理也不同,所以之前差点崩溃。经过测试和完善,最终其
- 效果如下:直接上代码,留着以后用,代码目录结构如下:其中BaseFragment.java是另外5个Fragment的基类,代码如下:pac
- springboot前端传参date类型后台处理先说结论建议大家直接使用@JsonFormat,原因如下: 1、针对json格式
- 需求有一个固定URL的文件,服务器端程序会定期的更新这个文件,现在需要写一个工具来监控这个文件的变化。解决办法最初我想到的是把这个文件下载下
- 前言本文将重点讲解一下Spring中@PropertySource注解的使用,如何通过PropertySource注解加载指定的配置文件。以
- 本文实例讲述了Android编程简单实现ImageView点击时背景图修改的方法。分享给大家供大家参考,具体如下:在使用ImageView时
- 本节讲运行在后台服务里的工作请求,如何向发送请求者报告状态。推荐用LocalBroadcastManager发送和接收状态,它限制了只有本a
- Android中的Service和其调用者既可以在同一个App中,也可以在不同的App。如果Service在App1中,而调用Service
- 基础概念百度百科是这么描述归并排序的: 归并操作(merge),也叫归并算法,指的是将两个已经排序的序列合并成一个序列的操作。设有数列{6,
- 嵌入式开发中,由于产品的绑定、验证等逻辑限制比较严重,需要自己做一个上位机工具,来实现USB/BT通讯工具,实现如串口通讯、OTA升级等功能
- 本文实例讲述了C#创建一个Word并打开的方法。分享给大家供大家参考。具体实现方法如下:private static string _cre
- 前言本文重点是要将mongodb与spring整合到项目中去,在实践中发现问题,追踪问题,然后解决问题。下面话不多说了,来一起看看详细的介绍