Я использую цель update-properties плагина Maven Versions для обновления свойств в pom.xml нескольких проектов. (https://www.mojohaus.org/versions-maven-plugin/update-properties-mojo.html). Я хочу последнюю версию зависимости для свойств.
Теперь есть несколько двоичных файлов с неправильными версиями. Я хочу, чтобы мой код игнорировал эти версии. Для этого я создал свой файл "rules.xml". Я хочу предоставить его в качестве аргумента -DrulesUri для цели update-properties.
Я уже пытался указать этот файл rules.xml в файле проекта pom.xml, как показано на ( Плагин версий Maven: ссылка на файл rule.xml из зависимости maven? ). Это работало, так как плагин мог успешно игнорировать указанные версии в rules.xml. Таким образом, с файлом rules.xml проблем нет. Но в моем случае это бесполезно, так как в нем участвует много проектов, и я не могу обновить pom.xml каждого проекта.
В документации к свойству rulesUri сказано "URI файла ruleSet, содержащего правила, управляющие тем, как сравнивать номера версий. URI может быть либо URI Wagon, либо URI classpath (например, classpath: /// package / sub / package /rules.xml) «. Эта большая документация мне не помогает. Я хотел бы получить пример того, как указать файл rules.xml в аргументе -DrulesUri. Я попытался указать файл rules.xml как локальный относительный путь / абсолютный путь. Но цель update-properties, похоже, не распознает правила, а просто действует аналогично выполнению без аргумента -DrulesUri. Я попытался прочитать https://maven.apache.org/wagon/, чтобы понять WRI URI. Но я не нашел простого способа загрузить свой файл rules.xml и затем использовать этот URI-код Wagon для указания в -DrulesUri.
Это мой файл rules.xml: -
<?xml version="1.0" encoding="UTF-8"?>
<ruleset xmlns="http://mojo.codehaus.org/versions-maven-plugin/rule/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" comparisonMethod="maven" xsi:schemaLocation="http://mojo.codehaus.org/versions-maven-plugin/rule/2.0.0 http://mojo.codehaus.org/versions-maven-plugin/xsd/rule-2.0.0.xsd">
<ignoreVersions>
<ignoreVersion type="regex">25243.*.*</ignoreVersion>
</ignoreVersions>
<rules>
</rules>
</ruleset>