我有一个 Maven 项目,其中有一个属性。我想从 Jenkins 访问它。
POM 片段:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<timestamp>${build.time}</timestamp>
<outputFolder>C:/AutomationTestReports/${project.name}/ExecutionReport${timestamp}</outputFolder>
</properties>
此输出文件夹属性在运行时进行评估。我想在 Jenkins 中访问此属性以导航到根据时间戳生成的输出文件夹。为此,我需要在 Jenkins 中捕获此输出文件夹属性,但我无法做到。
仅使用此输出文件夹,我将能够导航到该文件夹以访问结果文件。
问题 :如何从 Jenkins 工作访问 Maven 属性?
最佳答案
在当前版本的 Jenkins 中,使用“readMavenPom()”有一种很好且简单的方法来实现这一点。
比如我想读取pom.xml文件的版本。但如果它使用较新的 maven “修订版”实践,我需要从 pom.xml 中定义的属性中读取该“修订版”值。
def pomVersion = readMavenPom().version // read version
if (pomVersion.equals("\${revision}")) // using revision strategy, read revision property
{
pomVersion = readMavenPom().properties['revision']
}
所以最好的方法是使用
readMavenPom().properties['PROPETY_NAME']
关于maven - 如何从 Jenkins 访问 Maven 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36790763/