问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

gradle 要替代 maven 么

发布网友 发布时间:2022-04-24 23:26

我来回答

1个回答

热心网友 时间:2022-05-17 23:58

usercenter包含两个工程,app是web工程,common是公共模块,但是app的main目录下除了java、resources、webapp之外又多了一个native2ascii的资源目录,严格来说这不符合maven约定,不过没关系,gradle除了支持maven的约定外还允许自定义java或者resources目录
下面是gradle主配置文件(删除了大部分无关紧要的依赖,能说明问题即可)
<!-- lang: groovy -->
// gradle插件
buildscript {
repositories {
jcenter { url "/" }
}
dependencies {
// 远程布署插件
classpath 'org.hidetake:gradle-ssh-plugin:1.0.1'
// web容器,支持jetty和tomcat
classpath 'org.akhikhl.gretty:gretty:1.2.0'
}
}
// 全局配置,对所有工程有效
allprojects {
apply plugin: "java"
apply plugin: "idea"
apply plugin: "eclipse"
apply plugin: "maven"
group = "com.test"
version = "1.0"
// 全局属性设置
ext {
junitVersion = "4.11"
springVersion = "3.0.5.RELEASE"
// java文件编码方式设置为utf-8
compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
}
}
// 所有子工程共有的配置
subprojects {
// 配置多个maven源
repositories {
mavenLocal()
mavenCentral()
maven { url "/pub/mirrors/maven2" }
}
// 默认情况下gradle会选用版本最高的那个依赖,有时候会带来问题
configurations.all {
// 有版本冲突的时候强制使用指定的版本,对于相关依赖也同样有效
resolutionStrategy.force(
"org.springframework:spring-core:${springVersion}",
)
}
// 公共依赖配置
dependencies {
compile(
"org.springframework:spring-core:${springVersion}",
)
testCompile(
"junit:junit:${junitVersion}",
)
}
}
// app工程配置
project(':app'){
apply plugin: 'war'
apply from: 'gretty'
// 使用gretty插件运行web工程
gretty {
httpPort = 8080
debugPort = httpPort + 1
servicePort = httpPort + 2
statusPort = httpPort + 3
httpsPort = httpPort + 4
httpsEnabled = true
contextPath = '/'
jvmArgs = ['-Xmx1024M', '-XX:PermSize=128M', '-XX:MaxPermSize=256M']
servletContainer = 'jetty7'
scanInterval = 0
inplaceMode = 'hard'
debugSuspend = false
}
// 自定义resource文件夹
sourceSets {
main {
resources.srcDirs = ['src/main/resources', 'src/main/native2ascii']
}
}
dependencies {
compile(
// 依赖common工程
project(":common"),
"javax.servlet.jsp:jsp-api:2.1",
"javax.servlet:servlet-api:2.5",
)
}
}
// common工程配置
project(':common'){
// 设置resource文件目录,引入java文件夹下的xml文件
sourceSets {
main {
resources.srcDirs = ['src/main/resources', 'src/main/java']
resources.includes = ['src/main/java/**.xml']
}
}
dependencies {
compile(
"org.mongodb:mongo-java-driver:2.10.1",
fileTree(dir: 'lib' , include: '*.jar' )
)
}
}
settings.gradle中记录子工程,内容只有一行
include 'app','common'
可以把gradle配置写到多个文件夹下,每个子工程都下都新建一个build.gradle,如果工程比较简单,也可以像上面样,所有子工程的配置都写到主工程的build.gradle中
运行的时候只需要在主工程的目录下执行一个命令即可
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
中控是什么意思 抖音直播中控是什么意思 iphone通讯录群组设置 如何更改iphone通讯录拨打电话时总是出现两个称呼 我的电脑是Win8.1update老硬盘有坏道,最近新买了一个硬盘是希捷的1TB混 ... 使命召唤:黑色行动2常见问题 GMA 4500M技术特性 电脑显示器的配置电脑的基本配置有哪些 梦见对象把门钥匙和我分手 梦见对象还我门钥匙要和我分手的预兆 公益性捐赠税前扣除资格 Gradle比Maven好在哪里? idea2016创建javaweb maven和gradle有什么区别 gradle 与 maven,哪个更强 gradle与maven选哪个 maven和gradle哪个好 gradle和maven的区别是什么? gradle和maven的区别 gradle和maven有什么用?分别有什么区别 maven和gradle的区别 营养师都有哪些类(希望简单明了点)? 营养师要考些什么科目? 营养师考试内容是什么? 国家营养师考试科目具体有哪些? 营养师要考哪些科目? 伤残军人买动卧为什么不是半价票? 有残疾证的军人买票是否只能在窗口买票半价 学生票购买时为什么显示残军票? 伤残军人买高铁票是半价吗? 我是个正常人,为什么网上买火车票的时候买到的是残军票?那我已经买到了应该不会不让我坐吧? 伤残军人在网上怎么买火车票怎样买火车票? gradle sts 与 gradle 有何区别 什么是标准普尔指数? 标准普尔指数的影响 万事达在中国的客服电话是什么? 万事达卡在哪些超市可以用 北京 万事达中心在哪儿? 万事达卡不能在国内消费吗? 美国万事达公司总部在哪公司全称叫什么 中国银行万事达信用卡可以在国外用吗? 万事达卡是什么意思 万事达信用卡在香港刷卡收取手续费吗? 国内万事达在外国使用,手续费会收取多少? 万事达卡能否在中国大陆ATM取现? 万事达卡在超市能用吗? 国内中国银行万事达信用卡在美国取现金的资费标准 600556慧球科技属什么板块 大家怎么看600556慧球科技(北生药业)? 600556慧球科技估计会有几个跌停 证监会怎么回应ST慧球奇葩议案事件的? 600556股票以前叫啥名字?