Как получить список значений XML
Как получать список значений из тега version? Я пишу груви скрипт и не могу понять как получать список версий причем от последнего к первому
def listOfVersion = uc.getInputStream().text
println listOfVersion.getElementByTagName("version")[1]
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<group>my.app</group>
<artifact>server</artifact>
<versioning>
<latest>1.0.1</latest>
<release>1.0.0</release>
<versions>
<version>1.0.2</version>
<version>1.0.1</version>
<version>1.0.0</version>
</versions>
<lastUpdated>2232323336</lastUpdated>
</versioning>
</metadata>
Ответы (1 шт):
Автор решения: Vadik Sirekanyan
→ Ссылка
Чтобы работать с XML, нужен какой-нибудь XML-парсер.
Предположим, в корне проекта у вас есть XML-файл metadata.xml. Разобрать этот XML можно с помощью groovy.xml.XmlParser:
def metadata = new File("metadata.xml").text
def xml = new groovy.xml.XmlParser().parseText(metadata)
def versions = xml["versioning"]["versions"]["version"]
Распечатаем версии в обратном порядке:
versions.reverse().each { version ->
println(version.text())
}
Результат:
1.0.0
1.0.1
1.0.2