我有两个用Kotlin编写的微服务,它们共享大量代码和依赖项。
对于共享代码,我有一个git子模块存储库设置,它本质上是我所有微服务通用的软件包。我可以在我的IDE中打开一个微服务,将通用代码推送到git子模块,然后打开另一个项目,然后简单地拉出,我的通用更改也会出现在该项目中。
但是,我不确定如何声明所有项目共有的依赖项。该项目现在很小又足够灵活
因此,不同步的代价实际上要比保持同步更大(因为我们现在很小)。
这是一个示例依赖项块:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compile "ch.qos.logback:logback-classic:$logback_version"
}
现在,我想在多个项目之间共享它。我想更新一次,例如在coreModule/dependencies.gradle
下的文件中进行更新,然后一次在所有项目中进行更新(例如:在核心模块本身中使用通用gradle文件)
我想分享以下几行
implementation fileTree(dir: 'libs', include: ['*.jar'])
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compile "ch.qos.logback:logback-classic:$logback_version"
这样我的依赖项块在两个项目中都像这样
dependencies {
commonDependencies()
// .. microservice specific dependencies
}
我需要帮助的是定义commonDependencies块,以便可以在两个项目的依赖项块中使用它。任何想法将不胜感激。