我正在使用 Maven 版本插件的 update-properties 目标来更新多个项目的 pom.xml 中的属性。(https://www.mojohaus.org/versions-maven-plugin/update-properties-mojo.html)。我想要最新版本的属性依赖项。
现在,有一些版本错误的二进制文件。我希望我的代码忽略这些版本。为此,我创建了我的“rules.xml”文件。我想将它作为 -DrulesUri 参数提供给 update-properties 目标。
我已经尝试在项目的 pom.xml 文件中指定此 rules.xml 文件,如(Maven 版本插件:从 maven 依赖项中引用 rule.xml?)所示。这是因为插件可以成功忽略 rules.xml 中的指定版本。所以,rules.xml 文件没有问题。但是,这在我的情况下没有用,因为涉及的项目很多,我无法更新每个项目的 pom.xml。
rulesUri 属性的文档说“ruleSet 文件的 URI,其中包含控制如何比较版本号的规则。URI 可以是 Wagon URI 或类路径 URI(例如 classpath:///package/sub/package/rules. xml)。” 这么多文档对我没有帮助。我想要一个关于如何在 -DrulesUri 参数中指定 rules.xml 文件的示例。我尝试将 rules.xml 文件指定为本地相对路径/绝对路径。但是,update-properties 目标似乎无法识别规则,只是在没有 -DrulesUri 参数的情况下类似于执行。我尝试阅读https://maven.apache.org/wagon/以了解 Wagon URI。但是,我没有找到一种简单的方法将我的 rules.xml 上传到某个地方,然后使用这个 Wagon URI 在 -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>