【发布时间】:2019-04-11 10:48:35
【问题描述】:
我有一个项目 (B,C,D),它依赖于一个 Common-project(A)。 构建 A 时,应使用管道触发 B、C、D。 所有构建都成功。
Project-A 正在生成一个 JAR,它不会在本地以外的任何地方发布 (~/.m2/...)
我通常使用 Jenkinsfiles,但现在我还直接在 Jenkins 中使用代码设置了最少的管道作业,同时尝试让触发工作。
以下是我为测试创建的最小管道作业。
对于所有项目,我都勾选了“在构建 SNAPSHOT 依赖项时构建”
在构建日志中,我可以看到这两个项目: [信息] [jenkins-event-spy] 生成 /var/lib/jenkins/workspace/ProjectName@tmp/withMavend4286f3f/maven-spy-20190411-121907-5107444902202263660415.log
项目 A 管道
node{
stage ('Build'){
git branch: 'master', credentialsId: 'theID', url: 'git@github.com:ORG/PROJECT-A.git'
withMaven(
maven: 'Maven_3_6_0',
jdk: 'Java1.8'
) {
sh "mvn clean install"
}
}
}
项目 B 管道
node{
stage ('Build'){
git branch: 'master', credentialsId: 'theID', url: 'git@github.com:ORG/PROJECT-B.git'
withMaven(
maven: 'Maven_3_6_0',
jdk: 'Java1.8'
) {
sh "mvn clean install"
}
}
}
项目B pom.xml 依赖声明
<dependency>
<groupId>com.myorg</groupId>
<artifactId>projecta</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
我不知道在构建 A 时触发项目 B 还需要什么。
【问题讨论】:
标签: maven jenkins jenkins-pipeline jenkins-plugins