Gradle:修改默認(rèn)的Build配置文件名方式
Gradle修改默認(rèn)的Build配置文件名
Gradle默認(rèn)使用build.gradle作為默認(rèn)的配置文件文件名。
如果我們在build.gradle文件中編寫代碼,那么我們在運(yùn)行任務(wù)的時(shí)候,不需要指定build文件名。
我們也可以不使用build.gradle,而用另外的文件名來創(chuàng)建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'
配置文件中加入對應(yīng)buildFileName就萬事大吉了。
Gradle配置文件
gradle和maven一樣是用來做項(xiàng)目結(jié)構(gòu)管理和jar包管理的
我們來看看如何使用gradle進(jìn)行項(xiàng)目和jar包管理
1、第一步
新建項(xiàng)目,選擇使用Gradle
如果你的idea版本比較低,可能有"use auto-import"選項(xiàng),勾選他,這樣可以實(shí)現(xiàn)使用過程中自動(dòng)加依賴
點(diǎn)擊創(chuàng)建,就創(chuàng)建好一個(gè)gradle項(xiàng)目了
2、打開新建的項(xiàng)目
在idea的setting中可以看到gradle下載到本地的jar包放的位置
可以修改,建議不要放C盤
3、配置文件build.gradle中怎么配置
3.1 去maven倉庫拿jar包的地址
點(diǎn)進(jìn)去之后,比如說我要spring的包,那么我就輸入spring,選擇spring context,選擇版本,點(diǎn)進(jìn)去
將依賴地址放入build.gradle中
3.2build.gradle 文件中各關(guān)鍵字的意義
引用其他模塊中的包,和普通的引包
//這個(gè)表示當(dāng)前項(xiàng)目的groupId和版本,自己創(chuàng)建項(xiàng)目的時(shí)候設(shè)置的 group 'com.wcm' version '1.0-SNAPSHOT' // 運(yùn)行的環(huán)境:java環(huán)境,idea開發(fā)工具 apply plugin: 'java-library' apply plugin: 'idea' //java的版本和編碼集等信息,這里記得和idea中配置的一樣,都使用你自己的java版本 compileJava { sourceCompatibility = '1.8' targetCompatibility = '1.8' options.encoding = 'UTF-8' } //指定所使用的的倉庫,mavenCentral()表示使用中央倉庫 //此時(shí)項(xiàng)目中所需要的jar包都會(huì)從這個(gè)中央倉庫下載至本地指定倉庫 //你要是不配置,那么默認(rèn)就是maven的地址 repositories { mavenCentral() } //假如你要使用你們公司自己的中央倉庫,那么也可以使用repositories 進(jìn)行配置 //例如 repositories { maven { url "http://maven.xxxx.com:8081/repository/maven-public/" } } /* gradle工程所有的jar包的坐標(biāo)都在dependencies屬性內(nèi)放置 每一個(gè)jar包的坐標(biāo)都有三個(gè)基本元素組成:group,name,version testCompile表示該jar包在測試的時(shí)候起作用,該屬性為jar包的作用域 我們在gradle里面添加坐標(biāo)的時(shí)候都要帶上jar包的作用域 * */ dependencies { // spring項(xiàng)目管理 implementation group: 'org.springframework', name: 'spring-context', version: '5.3.22' // 引用不同模塊下的包,比如說,我這個(gè)模塊, //要引用service模塊下的payment-service模塊下的所有包,那么我就可以這么寫 api project(":service:payment-service") // 加入要使用我自定義的jar包,我把jar包放入新建的一個(gè) 模塊名/lib 包下, //那么我就可以這樣去引用我自己lib下的所有".jar"的包 // dir表示地址,includes表示包含那些東西 api fileTree(dir: 'lib', includes: ['*.jar']) //表示作用域測試環(huán)境,只在測試時(shí)起作用 testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' //也可以使用testCompile,表示只在測試時(shí)起作用 //使用group、name、version來設(shè)置而已,一樣的作用 //testCompile group: 'junit', name: 'junit', version: '4.12' }
此外build.gradle中還可以給子項(xiàng)目配置,子項(xiàng)目中都需要的就可以配置在這里,如果不是所有子模塊(項(xiàng)目)都需要的,那么子模塊可以在自己的build.gradle文件中配置
//子項(xiàng)目中的環(huán)境,上面那些可以配置的,這里都可以配置,只不過是在子項(xiàng)目中起作用 subprojects{ // 運(yùn)行的環(huán)境:java環(huán)境,idea開發(fā)工具 apply plugin: 'java-library' // 添加此插件,即可把項(xiàng)目變成web項(xiàng)目(當(dāng)然,你得自己創(chuàng)建WEB-INF文件夾和web.xml文件) apply plugin: 'war' dependencies { // testImplementation:表示測試時(shí)用到的jar包 testImplementation("org.springframework.boot:spring-boot-starter-test") } //java的版本和編碼集等信息 compileJava { sourceCompatibility = '1.8' } }
父項(xiàng)目與子項(xiàng)目的build.gradle配置文件
在父項(xiàng)目gradle配置文件中引入的依賴,子模塊并不能直接繼承獲取,這一點(diǎn)和maven不太一樣
但是我們只需要把需要給子模塊使用的jar包,用作用域包起來就可以實(shí)現(xiàn)子模塊也可以使用父項(xiàng)目中的jar依賴包了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
logback和log4j日志框架堆棧信息添加TraceId方式
這篇文章主要介紹了logback和log4j日志框架堆棧信息添加TraceId方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(33)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧,希望可以幫到你2021-07-07IDEA代碼熱部署和熱加載的三種實(shí)現(xiàn)方案
在日常開發(fā)中,我們需要經(jīng)常修改 Java 代碼,手動(dòng)重啟項(xiàng)目,查看修改后的效果,如果在項(xiàng)目小時(shí),重啟速度比較快,等待的時(shí)間是較短的,我們可以使用代碼熱加載和熱部署解決該問題,本文給大家介紹了三種實(shí)現(xiàn)方案,需要的朋友可以參考下2023-11-11使用spring boot開發(fā)時(shí)java對象和Json對象轉(zhuǎn)換的問題
這篇文章主要介紹了使用spring boot開發(fā)時(shí)java對象和Json對象轉(zhuǎn)換的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03java線程之使用Runnable接口創(chuàng)建線程的方法
本篇文章介紹了,java中使用Runnable接口創(chuàng)建線程的方法。需要的朋友參考下2013-05-05JAVA實(shí)現(xiàn)遍歷文件夾下的所有文件(遞歸調(diào)用和非遞歸調(diào)用)
本篇文章主要介紹了JAVA 遍歷文件夾下的所有文件(遞歸調(diào)用和非遞歸調(diào)用) ,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-01-01