编译工具-Gradle

文章目录

  • Idea中配置
  • Gradle项目
    • project目录
      • settings.gradle
      • build.gradle
      • gradlew
      • gradlew.bat
  • Gradle Build生命周期
  • 编写Settings.gradle
  • 编写Build.gradle
    • Tasks
    • Plugins

Idea中配置

在这里插入图片描述

配置项:gradle位置仓库位置

Gradle项目

Task,settings.gradle,build.gradle,wrapper 核心概念

project目录

settings.gradle

如配置root project 及 sub project

rootProject.name = 'poi'include 'poi', 'poi-ooxml-full', 'poi-ooxml-lite-agent', 'poi-scratchpad','poi-ooxml', 'poi-excelant', 'poi-examples', 'poi-integration' , 'poi-ooxml-lite'

build.gradle

配置依赖,插件,镜像源的地方

plugins {id 'java'
}group = 'org.example'
version = '1.0-SNAPSHOT'repositories {maven { url 'https://maven.tuna.tsinghua.edu.cn/nexus/content/groups/public' }maven { url 'https://maven.aliyun.com/repository/central' }maven { url 'https://maven.jуйyiyun.com/repository/central' }// 其他国内镜像源}dependencies {testImplementation platform('org.junit:junit-bom:5.10.0')testImplementation 'org.junit.jupiter:junit-jupiter'
}test {useJUnitPlatform()
}

gradlew

Linux或者Mac系统下Wrapper执行脚本

gradlew.bat

Windows系统下Wrapper执行脚本

Gradle Build生命周期

build lifecycle example

编写Settings.gradle

等价于Settings()对象,settings.gradle可以调用本身的属性和方法进行配置

具体Property和Method查官网API

rootProject.name = 'poi'include 'poi', 'poi-ooxml-full', 'poi-ooxml-lite-agent', 'poi-scratchpad','poi-ooxml', 'poi-excelant', 'poi-examples', 'poi-integration' , 'poi-ooxml-lite'

编写Build.gradle

等价于Project()对象,可以调用属性和方法进行配置、

依赖引入直接去Maven仓库里找对应包cv即可

/*插件*/
plugins {id 'java'
}
/*远程仓库地址*/
repositories {maven { url 'https://maven.tuna.tsinghua.edu.cn/nexus/content/groups/public' }maven { url 'https://maven.aliyun.com/repository/central' }maven { url 'https://maven.jуйyiyun.com/repository/central' }// 其他国内镜像源}/*依赖*/
dependencies {implementation("com.google.guava:guava:32.1.1-jre")testImplementation platform('org.junit:junit-bom:5.10.0')testImplementation 'org.junit.jupiter:junit-jupiter'// https://mvnrepository.com/artifact/org.apache.poi/poiimplementation group: 'org.apache.poi', name: 'poi', version: '5.2.3'
// https://mvnrepository.com/artifact/org.apache.pdfbox/pdfboximplementation group: 'org.apache.pdfbox', name: 'pdfbox', version: '3.0.1'
}

Tasks

  1. Lifecycle tasks

    生命周期内的task

  2. Actionable tasks

    单独一个任务

/*有依赖的task*/
tasks.register('hello') {doLast {println 'Hello world!'}
}
tasks.register('intro') {dependsOn tasks.hellodoLast {println "I'm Gradle"}
}/*指定group*/
tasks.register("hello") {group = "Custom"description = "A lovely greeting task."doLast {println("Hello world!")}
}

Plugins

分为Core plugins ,Community plugins ,和local plugins

/*core plugin  id一个参数即可*/
plugins {id("java")
}
/*community plugin  一般id和version两个参数*/
plugins {id «plugin id» version «plugin version»
}

插件必须在settings.gradle指定,且在最前行

pluginManagement {plugins {}resolutionStrategy {}repositories {}
}
rootProject.name = 'plugin-management'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/37915.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微型无人机未来发展方向

尽管今天的纳米和微型无人机显示出比早期系统大得多的能力,但在速度、续航能力、航程和有效载荷能力方面仍然存在局限性。在任何或所有这些领域的改进将使部队能够在推进或打击之前收集更大、更详细的可操作情报。这将允许优化任务规划,并有可能减少伤亡…

java一面 哭了-------

常见的设计模式 首先设计模式可分为三大类 创建型模式 单例模式:一个类只有一个实例,并提供全局访问;工厂模式:将创建实例的过程隐藏,实例通过一个工厂方法返回;抽象工厂模式:提供一个创建实…

Web渗透-命令执行漏洞及常见靶场探测实战

一、概述 命令执行(RCE):应用有时需要调用一些执行系统命令的函数,如php中的system,exec,shell exec,passthru,popen,proc popen等,当用户能控制这些函数的参数时,就可以将恶意系统命令拼接到正常命令中&a…

004-GeoGebra基础篇-GeoGebra的点

新手刚开始操作GeoGebra的时候一般都会恨之入骨,因为有些操作不进行学习确实有些难以凭自己发现。 目录 一、点的基本操作1. 通过工具界面添加点2. 关于点的选择(对象选择通用方法)(1)选择工具法(2&#xf…

【高考志愿】光学工程

目录 一、专业概述 二、专业特点 三、研究和就业方向 3.1 研究方向 3.2 就业方向 四、光学工程专业排名 高考志愿选择光学工程专业无疑是一项既具深度又富挑战性的明智之举。这个古老而充满魅力的专业,正逐渐崭露其在现代社会中的重要性与独特魅力。 一、专业…

NOI大纲——普及组——位运算总结

位运算总结 1.位运算符号 & \& &——按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0 ∣ | ∣——按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1 ^——按位异或 若参加运算的两个二进制位值相同则…

“势”是“态”的偶然性减少

“态势感知”中的“势”指的是一种趋势或倾向性,而“态”则表示状态或局势。这个术语常用于描述在一段时间内系统或事件显示出来的方向性变化或发展趋势。因此,可以将“态势”理解为系统或事件状态变化的趋势,这种变化通常反映出偶然性减少的…

解析Java中1000个常用类:Calendar类,你学会了吗?

推荐一个我自己写的程序员在线工具站: http://cxytools.com 提供一站式在线工具平台,专为程序员设计,包括时间日期、JSON处理、SQL格式化、随机字符串生成、UUID生成、随机数生成、文本Hash等功能,提升开发效率。 以下是正文。 在 Java 编程中,处理日期和时间是一个常见…

Java新手启航:Windows下JDK安装,开启编程之旅

你是不是对编程充满好奇,想要迈入Java的世界,却不知道从何开始?别担心,每一个Java大师都是从安装JDK开始的,而今天,我将手把手教你如何轻松完成JDK的安装,让你迈出编程之旅的第一步! 接下来&am…

websocket基础使用学习

websocket基础使用学习 一、websocket是什么?二、使用步骤1.websocket服务的安装与启动安装服务连接与发消息 总结 一、websocket是什么? 以前,很多网站为了实现推送技术,所用的技术都是Ajax 轮询。轮询是在特定的的时间间隔&…

ios18开发者预览,Beta 2升级新增镜像等功能

近日,苹果发布了 iOS 18 开发者预览版 Beta 2 升级,为 iPhone 用户带来了多项新功能。据了解,这些新功能包括 iPhone 镜像和 SharePlay 屏幕共享,以及其他新增功能。 据了解,iPhone镜像可以让Mac用户将iPhone屏幕镜像…

OLMo:真正完全开源的大模型

最近,又有一家机构AI2(Allen Institute for AI)开源了一个LLM:OLMo,它的英文全称就叫Open Language Model。相比之前开源的大模型,OLMo的独特之处是完全开源,除了训练的模型,OLMo还开…

ElementUI的基本搭建

目录 1,首先在控制终端中输入下面代码:npm i element-ui -S 安装element UI 2,构架登录页面,login.vue​编辑 3,在官网获取对应所需的代码直接复制粘贴到对应位置 4,在继续完善,从官网添加…

商业智能(BI)实战项目

商业智能(BI)实战项目 期待您的关注 ☀大数据学习笔记 1.实现的功能 2.数据库操作步骤 创建数据库:create database card;创建表:create table card_apply ( cid bigint primary key auto_increment ,apply_uid bigint ,apply_ent…

商城自动化测试实战 —— 登录+滑块验证

hello大家好,我是你们的小编! 本商城测试项目采取PO模型和数据分离式架构,采用pytestseleniumjenkins结合的方式进行脚本编写与运行,项目架构如下: 1、创建项目名称:code_shopping,创建所需项目…

openEuler安装docker

在openEuler上安装Docker,可以通过以下步骤进行: 1、更新软件包索引: sudo yum makecache 2、安装Docker: sudo yum install docker -y 3、启动Docker服务: sudo systemctl start docker 4、设置Docker开机自启&am…

010、GPT-5:AI新纪元的曙光与挑战

目录 GPT-5:AI新纪元的曙光与挑战 1.革命性的个人助理 2.教育领域的变革 3.医疗健康的新篇章 4.科研创新的加速器 5.创意产业的新灵感 6.商业与经济的智能化 7.社会治理的新工具 8.环境保护与可持续发展 9.伦理与社会影响 学术视角:AI发展的前…

惠海H6392 2.6v升5V 3.7V升9V 4.2V升12V 升压恒压芯片 小家电IC

惠海H6392升压恒压芯片是一款小家电、移动设备以及其他需要升压恒压电源的电子设备设计的DC-DC转换器。这款芯片以其独特的产品特性和广泛的应用场景,为电子产品设计者提供了高效、稳定的电源解决方案。 产品描述: H6392采用了简单的电流模式升压技术&a…

使用Collections.shuffle打乱集合顺序

使用Collections.shuffle打乱集合顺序 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨如何使用Java中的Collections.shuffle方法来打乱集合的顺序…

单例模式实现方式

单例模式 单例模式(Singleton Pattern)的主要目的是确保一个类只有一个实例,并提供一个全局访问点来访问该实例。 在 Java 中,实现单例模式的方式有几种常见的方式 懒汉式 public class Singleton{private static final Singlet…