All checks were successful
CI/CD Pipeline / build-and-deploy (push) Successful in 2m3s
- 更新依赖版本: - forgeBoot 版本从 1.1.0-SNAPSHOT 升级到 1.2.0-SNAPSHOT - spring-dependency-management 版本 1.1.7 未变 - aliyun-bailian 版本 2.0.0 未变 - spring-cloud-starter-alibaba-nacos-discovery 版本 2023.0.1.0 未变 - okHttp 版本 4.12.0 未变 - jib 版本 3.4.2 未变 - org-reactivestreams-reactiveStreams 版本 1.0.4 未变- 调整模块间依赖: - llmx-core-service: 依赖从 Core.SPI 改为 Core.COMMON - llmx-impl-bailian 和 llmx-impl-openai: 移除冗余依赖,统一配置 - 根项目:添加 USE_LLM_IMPL_PLATFORM_DEPENDENCE 标志 - 移除跨域配置类 CorsConfig 中的注释 - 修改 LlmxCoreServiceApplication 类为 open - 删除 ChatController 中的 @CrossOrigin 注解
173 lines
6.0 KiB
Plaintext
173 lines
6.0 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.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_WEB, false)
|
|
set(ProjectFlags.USE_LLM_KT_IMPL_DEPENDENCE, false)
|
|
set(ProjectFlags.USE_SPRING_CLOUD_BOM, false)
|
|
set(ProjectFlags.IS_ROOT_MODULE, false)
|
|
set(ProjectFlags.USE_SPRING_BOOT_BOM, false)
|
|
set(ProjectFlags.USE_LLM_IMPL_PLATFORM_DEPENDENCE, 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://maven.aliyun.com/repository/public/")
|
|
}
|
|
maven { url = uri("https://maven.aliyun.com/repository/central") }
|
|
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 {
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_LLM_IMPL_PLATFORM_DEPENDENCE)) {
|
|
apply {
|
|
plugin(libs.plugins.kotlin.plugin.spring.get().pluginId)
|
|
}
|
|
ext {
|
|
setProperty(ProjectFlags.USE_SPRING_BOOT_WEB, true)
|
|
setProperty(ProjectFlags.USE_SPRING_CLOUD_BOM, true)
|
|
setProperty(ProjectFlags.USE_LLM_KT_IMPL_DEPENDENCE, true)
|
|
}
|
|
dependencies {
|
|
// Nacos 服务发现和配置
|
|
implementation(libs.springCloudStarter.alibaba.nacos.discovery)
|
|
// 核心spi依赖
|
|
implementation(project(Modules.Core.SPI))
|
|
// okHttp依赖
|
|
implementation(libs.okHttp)
|
|
// forgeBoot依赖
|
|
implementation(libs.forgeBoot.core.extension)
|
|
implementation(libs.forgeBoot.core.extension)
|
|
}
|
|
}
|
|
// springCloudBom
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_CLOUD_BOM)) {
|
|
dependencies {
|
|
implementation(platform(libs.springCloudDependencies.bom))
|
|
}
|
|
}
|
|
// springBootBom
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_BOOT_BOM)) {
|
|
dependencies {
|
|
implementation(platform(libs.springBootDependencies.bom))
|
|
}
|
|
}
|
|
// springbootWeb
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_BOOT_WEB)) {
|
|
apply {
|
|
plugin(libs.plugins.spring.boot.get().pluginId)
|
|
}
|
|
dependencies {
|
|
implementation(libs.springBootStarter.web)
|
|
implementation(platform(libs.springBootDependencies.bom))
|
|
testImplementation(libs.springBootStarter.test)
|
|
testRuntimeOnly(libs.junitPlatform.launcher)
|
|
}
|
|
}
|
|
// 使用kt实现impl服务依赖
|
|
if (project.getPropertyByBoolean(ProjectFlags.USE_LLM_KT_IMPL_DEPENDENCE)) {
|
|
dependencies {
|
|
// jackson kt模块依赖
|
|
implementation(libs.jackson.module.kotlin)
|
|
// kt协程依赖
|
|
implementation(libs.kotlinx.coruntes.reactor)
|
|
}
|
|
}
|
|
|
|
}
|
|
val libs = rootProject.libs
|
|
apply {
|
|
plugin(libs.plugins.java.get().pluginId)
|
|
plugin(libs.plugins.kotlin.jvm.get().pluginId)
|
|
plugin(libs.plugins.jibLocalPlugin.get().pluginId)
|
|
}
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict")
|
|
}
|
|
}
|
|
jibConfig {
|
|
val env = System.getenv("SPRING_PROFILES_ACTIVE")
|
|
project {
|
|
projectName = "llmx-core-service"
|
|
ports = listOf("9002")
|
|
environment = mapOf("SPRING_PROFILES_ACTIVE" to env)
|
|
imageName = "llmx-core-service"
|
|
paths = listOf(File(rootProject.projectDir, "scripts").absolutePath)
|
|
entrypoint = listOf(
|
|
"/bin/sh", "-c",
|
|
"/entrypoint.sh -d llmx-nacos:8848 -c " +
|
|
"'java -cp $( cat /app/jib-classpath-file ) $( cat /app/jib-main-class-file )'"
|
|
)
|
|
}
|
|
project {
|
|
projectName = "llmx-impl-bailian"
|
|
ports = listOf("9003")
|
|
environment = mapOf("SPRING_PROFILES_ACTIVE" to env)
|
|
imageName = "llmx-impl-bailian"
|
|
paths = listOf(File(rootProject.projectDir, "scripts").absolutePath)
|
|
entrypoint = listOf(
|
|
"/bin/sh", "-c",
|
|
"/entrypoint.sh -d llmx-nacos:8848 -c " +
|
|
"'java -cp $( cat /app/jib-classpath-file ) $( cat /app/jib-main-class-file )'"
|
|
)
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
}
|
|
fun Project.getPropertyByBoolean(key: String): Boolean {
|
|
return properties[key]?.toString()?.toBoolean() ?: false
|
|
} |