Gradle:修改默认的Build配置文件名方式

 更新时间:2023年03月17日 14:45:21   作者:chihaihai  
这篇文章主要介绍了Gradle:修改默认的Build配置文件名方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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依赖包了

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java 方法递归的思路详解

    Java 方法递归的思路详解

    程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。但是如果没终止条件会造成死循环,所以递归代码里要有结束自调自的条件,接下来讲解一下学习递归的思路
    2022-04-04
  • Java中输入输出方式的简单示例

    Java中输入输出方式的简单示例

    Java语言的输入输出功能是十分强大而灵活的,美中不足的是看上去输入输出的代码并不是很简洁,因为你往往需要包装许多不同的对象,下面这篇文章主要给大家介绍了关于Java中输入输出方式的相关资料,需要的朋友可以参考下
    2021-08-08
  • Java程序单实例运行的简单实现

    Java程序单实例运行的简单实现

    这篇文章主要介绍了Java程序单实例运行的简单实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • java打包maven启动报错jar中没有主清单属性

    java打包maven启动报错jar中没有主清单属性

    本文主要介绍了java打包maven启动报错jar中没有主清单属性,可能原因是创建springboot项目时,自动导入,下面就来介绍一下解决方法,感兴趣的可以了解一下
    2024-03-03
  • AQS同步组件CyclicBarrier循环屏障用例剖析

    AQS同步组件CyclicBarrier循环屏障用例剖析

    这篇文章主要为大家介绍了AQS同步组件CyclicBarrier循环屏障用例剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • SpringBoot使用validation-api实现参数校验的示例

    SpringBoot使用validation-api实现参数校验的示例

    这篇文章主要介绍了SpringBoot使用validation-api实现参数校验的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Spring Bean管理注解方式代码实例

    Spring Bean管理注解方式代码实例

    这篇文章主要介绍了Spring Bean管理注解方式代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Java中泛型的示例详解

    Java中泛型的示例详解

    泛型机制在项目中一直都在使用,不仅如此,很多源码中都用到了泛型机制。本文将通过一些示例带大家深入了解一下Java的泛型机制,需要的可以了解一下
    2022-10-10
  • maven一键删除仓库无用文件的实现

    maven一键删除仓库无用文件的实现

    大家都知道我们在使用Maven的时候,会下载一堆无用非jar文件,本文主要介绍了maven一键删除仓库无用文件的实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • java如何实时动态获取properties文件的内容

    java如何实时动态获取properties文件的内容

    这篇文章主要介绍了java如何实时动态获取properties文件的内容,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09

最新评论