126 lines
3.9 KiB
Plaintext
126 lines
3.9 KiB
Plaintext
plugins {
|
|
alias(libs.plugins.java)
|
|
alias(libs.plugins.kotlin.jvm)
|
|
alias(libs.plugins.kotlin.plugin.spring)
|
|
alias(libs.plugins.spring.boot)
|
|
alias(libs.plugins.spring.dependency.management)
|
|
alias(libs.plugins.jibLocalPlugin)
|
|
}
|
|
|
|
group = "org.jcnc"
|
|
version = "1.0-SNAPSHOT"
|
|
|
|
/**
|
|
* 由于 Kotlin 插件引入时会自动添加依赖,但根项目不需要 Kotlin 依赖,因此需要排除 Kotlin 依赖
|
|
*/
|
|
configurations.implementation {
|
|
exclude(group = "org.jetbrains.kotlin", module = "kotlin-stdlib")
|
|
}
|
|
allprojects {
|
|
// 设置全局属性
|
|
ext {
|
|
set(ProjectFlags.USE_SPRING_BOOT, false)
|
|
set(ProjectFlags.USE_LLM_CORE_SPI, false)
|
|
set(ProjectFlags.USE_SPRING_CLOUD_BOM, false)
|
|
set(ProjectFlags.IS_ROOT_MODULE, false)
|
|
}
|
|
repositories {
|
|
mavenLocal()
|
|
maven {
|
|
url = uri("http://49.235.96.75:3001/api/packages/gewuyou/maven")
|
|
isAllowInsecureProtocol = true
|
|
}
|
|
maven {
|
|
url = uri("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev")
|
|
}
|
|
maven {
|
|
url = uri("https://raw.githubusercontent.com/eurotech/kura_addons/mvn-repo/")
|
|
}
|
|
maven {
|
|
url = uri("https://maven.aliyun.com/repository/public/")
|
|
}
|
|
maven {
|
|
url = uri("https://maven.aliyun.com/repository/spring/")
|
|
}
|
|
maven {
|
|
url = uri("https://maven.aliyun.com/repository/spring-plugin/")
|
|
}
|
|
maven {
|
|
url = uri("https://maven.aliyun.com/repository/gradle-plugin/")
|
|
}
|
|
mavenCentral()
|
|
google()
|
|
gradlePluginPortal()
|
|
}
|
|
afterEvaluate {
|
|
if (project.getPropertyByBoolean(ProjectFlags.IS_ROOT_MODULE)) {
|
|
/**
|
|
* 由于 Kotlin 插件引入时会自动添加依赖,但根项目不需要 Kotlin 依赖,因此需要排除 Kotlin 依赖
|
|
*/
|
|
configurations.implementation {
|
|
exclude(group = "org.jetbrains.kotlin", module = "kotlin-stdlib")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
subprojects {
|
|
afterEvaluate {
|
|
// springbootWeb
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_BOOT)) {
|
|
apply {
|
|
plugin(libs.plugins.spring.dependency.management.get().pluginId)
|
|
plugin(libs.plugins.spring.boot.get().pluginId)
|
|
plugin(libs.plugins.kotlin.plugin.spring.get().pluginId)
|
|
}
|
|
dependencies {
|
|
implementation(libs.springBootStarter.web)
|
|
|
|
testImplementation(libs.springBootStarter.test)
|
|
testRuntimeOnly(libs.junitPlatform.launcher)
|
|
}
|
|
}
|
|
// llm-core-spi
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_LLM_CORE_SPI)) {
|
|
dependencies {
|
|
implementation(project(Modules.Core.SPI))
|
|
}
|
|
}
|
|
// springCloudBom
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_CLOUD_BOM)) {
|
|
dependencies {
|
|
implementation(platform(libs.springCloudDependencies.bom))
|
|
}
|
|
}
|
|
}
|
|
val libs = rootProject.libs
|
|
apply {
|
|
plugin(libs.plugins.java.get().pluginId)
|
|
plugin(libs.plugins.kotlin.jvm.get().pluginId)
|
|
plugin(libs.plugins.jibLocalPlugin.get().pluginId)
|
|
}
|
|
println(project.name + ":" + project.getPropertyByBoolean(ProjectFlags.USE_SPRING_BOOT))
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict")
|
|
}
|
|
}
|
|
jibConfig {
|
|
project {
|
|
projectName = "llmhub-core-service"
|
|
ports = listOf("9002")
|
|
environment = mapOf("SPRING_PROFILES_ACTIVE" to "prod")
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
}
|
|
fun Project.getPropertyByBoolean(key: String): Boolean {
|
|
return properties[key]?.toString()?.toBoolean() ?: false
|
|
} |