Значение выборки из ключа массива json начинается с @ - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь получить доступ к значению

@ angular / core

из файла json выглядит следующим образом:

"dependencies": {
   "@angular/animations": "^6.1.0",
   "@angular/common": "^6.1.0",
   "@angular/compiler": "^6.1.0",
   "@angular/core": "^6.1.0",
   "@angular/forms": "^6.1.0",
   "@angular/http": "^6.1.0",
   "@angular/platform-browser": "^6.1.0",
   "@angular/platform-browser-dynamic": "^6.1.0",
   "@angular/router": "^6.1.0",
   "core-js": "^2.5.4",
   "rxjs": "~6.2.0",
   "zone.js": "~0.8.26"
},

кодя пробовал

    def packageString = readFile("app/package.json")  // read the json file
    def parsedPackageString =  new groovy.json.JsonSlurperClassic().parseText(packageString)

    echo "My Angular Project version $parsedPackageString.dependencies.@angular/core"

, но он печатает все значения зависимостей

Мой ожидаемый результат -

"^ 6.1.0",

1 Ответ

0 голосов
/ 13 февраля 2019

Вам нужно только указать свойство для parsedPackageString :

def parsedPackageString =  new groovy.json.JsonSlurperClassic().parseText(packageString).dependencies.'@angular/core'
...