- 自定义task
# build.gradle中加入
task customtask {
System.out.println(System.getenv('BUILD_NUMBER'));
}
并执行task:
$ gradle customtask
- 执行task并传递环境变量
$ BUILD_NUMBER=2 gradle bustomtask
- 打印项目所有依赖
gradle dependencies
gradle dependencyInsight --dependency slf4j-api
- 创建BOM
```plugins {
id 'java-platform'
id 'maven-publish'
}
javaPlatform {
//allowDependencies()
}
def buildNumber = System.getenv('BUILD_NUMBER') == null ? 0 : System.getenv('BUILD_NUMBER')
group 'com.xxx'
version '1.0.0.' + buildNumber + '-SNAPSHOT'
ext {
springBootVersion = '2.3.12.RELEASE'
set('springCloudVersion', "Hoxton.SR12")
ext['log4j2.version'] = '2.15.0'
set('elasticsearch.version', '5.6.11')
}
dependencies {
api(platform("org.springframework.boot:spring-boot-dependencies:$springBootVersion"))
api(platform("org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"))
api(platform("com.alibaba.cloud:spring-cloud-alibaba-dependencies:2.2.7.RELEASE"))
api(enforcedPlatform("org.apache.logging.log4j:log4j-bom:2.15.0"))
//在constraints块中定义依赖版本约束
constraints {
api(enforcedPlatform("org.apache.logging.log4j:log4j-bom:2.15.0"))
api 'org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter:7.14.0'
api 'org.springdoc:springdoc-openapi-common:1.4.0'
api 'org.springdoc:springdoc-openapi-data-rest:1.4.0'
api "org.springframework.boot:spring-boot-starter-webflux:$springBootVersion"
}
}
// 定义发布配置
publishing {
// 定义发布项目
publications {
wotuPlatform(MavenPublication) {
from components.javaPlatform
}
}
// 仓库定义(可以发布到Nexus私服等)
repositories {
maven {
credentials {
username = ''
password = ''
}
def releasesRepoUrl = '
def snapshotsRepoUrl = ''
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
}
}
}