如何在 jenkins 管道中将多行字符串传递给 maven?

问题描述 投票:0回答:1

我对 Groovy 脚本不太熟悉。我的一个示例 Jenkins 管道中有一个多行字符串,如下所示

我需要从用户那里获取输入并将其传递给环境变量中的 maven。我在我的 maven 命令中使用它

test -Dtest="TestclassName" -DDATA=${DATA}

我的问题是,当我在 Java 代码中回显 ${DATA} 的值时,它会打印在 Jenkins 控制台上完美输入的所有数据,但是当传递给 Maven 时,它会因以下错误而失败

 String paramValue2= System.getProperty("DATA");

但是当运行 mvn 命令时它失败并出现以下错误,因为 maven 正在将新行视为新目标并且同样失败。我搜索了许多链接但无法找到答案

[错误] 未知的生命周期阶段“52555#20-12-2023,2012-13-2023$”。你 必须以格式指定有效的生命周期阶段或目标 : 或者 :[:]:. 可用的生命周期阶段是:验证、初始化、 生成源,处理源,生成资源, 流程资源、编译、流程类、生成测试源、 过程测试资源,生成测试资源,过程测试资源, 测试编译,过程测试类,测试,准备包,包, 集成前测试、集成测试、集成后测试、验证、 安装、部署、清理前、清理、清理后、现场前、现场、 站点后,站点部署。 -> [帮助 1]

java maven jenkins jenkins-pipeline multiline
1个回答
0
投票

在 Jenkins 中使用以下命令为我工作

 -DPACKAGE_DATA="${DATA}"
© www.soinside.com 2019 - 2024. All rights reserved.