从詹金斯阅读 json

Read json from jenkins

我正在尝试使用 grovvy 脚本从 jenkinsfile 中读取 json 文件。我正在使用 pipeline-utility-steps-plugin,它允许将 json 文件读取为包含以下内容的字符串。

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

阅读文档后,我想我可以摆脱这样的事情,但我肯定做错了什么,因为结果为空?

projects.project[1].name

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

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"
      }
    ]
  }
}

您访问错误。 projects.project[1].name中的projects指的是这里定义的变量def projects = readJSON file: "${env.WORKSPACE}\Projects.json".

您又获得了内部 json 键作为 projects。所以请使用 projects.projects.project[1].name 来访问该值。希望这有帮助。