【发布时间】:2020-09-23 07:06:18
【问题描述】:
我正在尝试在 Jenkins 上部署我们的项目,但每个组件都只是使用根目录中的 settings.gradle 文件,即使我为每个组件添加了单独的 settings.gradle 文件。
目前,我有这样的结构。
- 根
- 用户界面
- ship(在此文件夹中包含 settings.gradle 和 build.gradle)
- 订购
- 质量
- 审核
- settings.gradle
- build.gradle
- 用户界面
我在 settings.gradle 文件中有 include("ui:shipnotice") 用于根目录和 ship 目录。
我有一个任务叫copy,当我尝试在ship文件夹下调用这个任务时,我需要使用../../graldew --no-daemon --info copy
我收到了以下Settings evaluated using settings file 'xxx/ui/shipnotice/settings.gradle.kts'.
但是,在我使用 Jenkins 部署它之后,事情变得很奇怪。在 Jenkins 中,它一直使用根目录下的 settings.gradle 文件。
Settings evaluated using settings file '/home/jenkins/workspace/xxx/settings.gradle.kts'.
FAILURE: Build failed with an exception.
* What went wrong:
Project directory '/home/jenkins/workspace/xxx/ui/shipnotice' is not part of the build defined by settings file '/home/jenkins/workspace/xxx/settings.gradle.kts'. If this is an unrelated build, it must have its own settings file.
我尝试添加rootProject.name = "shipnotice" include("ui:shipnotice") 以将shipnotice 作为根项目,但它仍然使用来自根的文件。
谁能给我一些关于这个错误的想法?提前致谢!
【问题讨论】:
标签: jenkins gradle continuous-integration