我有一个Jenkinsfile,其中需要我的.csproj文件(dotnet核心项目)中的属性

我已经试过了:

def versionPrefix = sh(script: 'cat ./src/project.csproj | grep (?<=<VersionPrefix>).*(?=</VersionPrefix>)')

我知道我可能还差得很远,所以我不一定要寻找与此接近的东西,但我正在寻找不需要插件的解决方案(最好)。

最佳答案

无管道解决方案

首先安装Environment Script Plugin

然后配置为以下图像

jenkins - 从Jenkinsfile中的xml文件获取属性值-LMLPHP

Enviroment Script Plugin

在图像中,我从build.xml文件获取版本,egrep中的“ -o” arg(也可与grep一起使用)仅返回我想要的部分,而不返回整行,其余部分为纯正则表达式以匹配编号版本。 (点),类似

1.3.13

管道解决方案

只需根据需要调整图像中的grep

def versionPrefix =  sh(script: 'grep -o (?<=<VersionPrefix>).*(?=</VersionPrefix>) ./src/project.csproj')

08-28 07:28