从jenkins读json

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

我试图用groovy脚本从jenkins文件中读取一个json文件。我正在使用pipeline-utility-steps-plugin,它允许使用以下内容将json文件作为字符串读取。

def projects = readJSON file: "${env.WORKSPACE}\\Projects.json"

在阅读了文档之后,我想我可以用这样的东西出去,但我肯定做错了什么因为结果是空的?

projects.project[1].name

现在我的问题是我似乎无法弄清楚我是如何得到2号的名字?请帮帮我

Projects.json的内容

    {
  "projects": {
    "project": [
      {
        "name": "PackingStation",
        "solution": "PackingStation\\BLogic.Applications.PackingStation.sln",
        "analysisFiles": "BLogic.Applications.PackingStation.exe"
      },
      {
        "name": "MasterData",
        "solution": "MasterData\\BLogic.Applications.MasterData.sln",
        "analysisFiles": "BLogic.Applications.MasterData.exe"
      },
      {
        "name": "OrderManager",
        "solution": "OrderManager\\BLogic.Applications.OrderManager.sln",
        "analysisFiles": "BLogic.Applications.OrderManager.exe"
      }
    ]
  }
}
jenkins jenkins-groovy
1个回答
3
投票

你错了。 projects中的projects.project[1].name指的是def projects = readJSON file: "${env.WORKSPACE}\\Projects.json"定义的变量。

你有再次内部json键作为projects。所以请使用projects.projects.project[1].name来访问该值。希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.