как изменить версию приложения ioni c с помощью xmlstarlet? - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь изменить версию приложения ioni c, когда добавляю новую версию в репозиторий git. Чтобы добиться этого, я выполняю xmlstarlet ed -L -u 'widget\@version' -v '<tag value>' config.xml, но на выходе ничего не изменилось. Я уже пробовал выражение xpath, и оно находит узел. это файл config. xml:

<?xml version="1.0"?>
<widget xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" id="io.ionic.my_app" version="1.0.3">
...
</widget>

Если я удалю свойства xmlns и xmlns:cdv, он работает, почему эти свойства влияют на то, как работает xmlstarlet, и как я могу это исправить ?

1 Ответ

1 голос
/ 14 июля 2020

Что ж, эта проблема возникает из-за того, что использование пространств имен может быть исправлено добавлением свойства пространства имен к xmlstarlet с помощью -N команда будет иметь такой вид xmlstarlet ed -L -N N='http://www.w3.org/ns/widgets' -u 'N:widget/@version' -v '1.0.10' config.xml, как вы можете видеть, мы добавляем N: к xpath

...