gradle跟pom_Gradle多项目构建–父pom式结构
gradle跟pom
当您来自Maven背景时,很可能已经习惯了父pom结构。
现在,在进行gradle时,情况有所不同。
想象一下有一个包含接口和各种其他实现的项目的场景。
这将是我们的项目结构。
multi-project-gradle
-- specification
-- core
-- implementation-a
-- implementation-b
规范项目包含接口,实现将基于这些接口。 核心项目将包含需要在实现之间共享的功能。
下一步是在multi-project-gradle中创建每个项目。
每个项目实际上是带有builde.gradle文件的目录。
plugins {id 'java'
}repositories {mavenCentral()
}dependencies {testCompile group: 'junit', name: 'junit', version: '4.12'
}
完成后,您需要在父项目和子项目之间进行链接。
为此,您可以创建multi-project-gradle / settings.gradle并包含其他项目。
rootProject.name = 'com.gkatzioura'
include 'specification'
include 'core'
include 'implementation-a'
include 'implementation- b'
现在,如果为每个子项目都设置了build.gradle文件,那么您刚刚意识到,随处都包含了junit依赖项和mavencentral存储库。
使用多项目构建的主要好处之一是消除重复。
为此,我们将创建multi-project-gradle / build.gradle文件,在其中添加junit依赖项和maven中央引用。
subprojects {apply plugin: 'java'repositories {mavenCentral()}dependencies {testCompile group: 'junit', name: 'junit', version: '4.12'}}
现在,我们可以将依赖项添加到每个项目,甚至可以指定子项目所需的依赖项。
例如核心项目使用规范项目
dependencies {compile project(':specification')
}
每个实施项目都使用核心项目
dependencies {compile project(':core')
}
您可以在github上找到该项目。
翻译自: https://www.javacodegeeks.com/2018/07/gradle-parent-pom-structure.html
gradle跟pom
gradle跟pom_Gradle多项目构建–父pom式结构相关推荐
- Gradle多项目构建–类似父pom的结构
当您来自Maven背景时,很可能已经习惯了父pom结构. 现在,在进行gradle时,情况有所不同. 想象一下有一个包含接口和各种其他实现的项目的场景. 这将是我们的项目结构. multi-proje ...
- 如何使用Gradle外部脚本进行项目构建
本文新建一个文件other.gradle, 内容如下: println "configuring $project" task hello {doLast{println 'hel ...
- Gradle 2.0 用户指南翻译——第五十六章. 多项目构建
本文禁止w3cschool转载! 翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc . 本文翻译所在分支:https://github.com/m ...
- Gradle 1.12用户指南翻译——第五十六章. 多项目构建
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
- 项目构建错误:com.mabang:wms-api:0.0.1-SNAPSHOT 的不可解析父 POM
报错信息: Project build error: Non-resolvable parent POM for com.mabang:wms-api:0.0.1-SNAPSHOT: Could no ...
- Java项目构建工具Gradle是否可以完全替代Maven?
前言 在Java项目的开发中,需要引入自动化构建工具来帮助我们管理项目的外部依赖包.项目编译.打包等工作.Gradle和Maven是Java世界中两个重要的自动化构建工具,在项目中我们在两者之间如何选 ...
- Java技术:项目构建工具Maven最佳替代者gradle介绍
Maven作为一款非常流行的项目构建工具.基本上是每个Java程序员必备的工具,当然Maven有一些地方不足之处: 1. Maven的配置文件是XML格式的,如果你的项目工程依赖的包很多,那么XML文 ...
- java ee maven_针对新手的Java EE7和Maven项目–第1部分–简单的Maven项目结构–父pom...
java ee maven 为什么呢 很多时候,我在日常工作中试图解决一些基本或复杂的Maven / Java EE项目结构问题. 为了提供解决方案,我经常最终会尝试项目结构,测试我在不同应用程序服务 ...
- 针对新手的Java EE7和Maven项目–第1部分–简单的Maven项目结构–父pom
为什么呢 很多时候,我在日常工作中试图解决一些基本或复杂的Maven / Java EE项目结构问题. 为了提供解决方案,我经常最终会尝试项目结构,测试我在不同应用程序服务器上的部署并细化我的配置. ...
最新文章
- CSS之布局(盒子的垂直布局)
- 平板电脑安装软件_题宝典软件升级了,微信公众号版不受影响,电脑版/手机APP/平板APP需要重新下载安装...
- html met详解转
- UNIX高手应该保持的习惯
- pyinstaller安装以及生成exe文件
- 二叉树最近公共祖先节点
- matlab 图片批量读取
- mysql解压版怎么退出_mysql-8.0.15-winx64 解压版安装教程及退出的三种方式
- 关于Mysql的错误:No query specified
- InfoPath2010表单-IE浏览器2个“微型内嵌工具”的使用和介绍
- python骗局-如何识破python小课骗局_怎样选择学校呢
- 若程序员们的“反996协议”实行,会发生什么
- 阿里云免费SSL证书到期了怎么办?(阿里云虚拟主机安装HTTPS)
- Java 订单管理系统
- 语音识别(ASR)论文优选:关注语音识别系统Fairness问题Towards Measuring Fairness in Speech Recognition
- 记录Nacos下载安装和使用
- 微信小程序的重点(重中之重)
- 如何找国外作者的matlab,如何与外国学者用电子邮件联系(索要论文或者代码)...
- 外骨骼机器人(一):Lokomat核心技术简介
- 跨平台工具详解:Netbiscuits (Kony solutions的竞争对手)
热门文章
- 【网络流】最大流问题(EK算法带模板,Dinic算法带模板及弧优化,ISAP算法带模板及弧优化)上下界网络流
- YbtOJ#20078-[NOIP2020模拟赛B组Day7]路径之和【分治,Flody】
- P4331-[BalticOI2004]Sequence数字序列【左偏树】
- P2607-[ZJOI2008]骑士【基环树,树形dp】
- nssl1209-奇怪的队列【贪心,权值线段树】
- 【二分】买礼物的艰辛
- JavaFX图表(五)之气泡图
- Spring 基于注解的配置
- Oracle入门(七)之表空间
- java面试常考系列四