我正在使用maven-versions-plugin
目标setProperties
。我已经定义了一个ruleset
用于比较当前属性版本与包含 git 分支名称(一个 git 标签)并具有以下格式的可用版本:<number>.<number>.<number>-<branch_name>.<number>
例如,如果分支是dev
我想匹配版本,1.29.0-dev.5
并忽略任何其他标签,如1.28.0-release.3
or 1.8.0-prere10010.1
。
该规则要求指定要忽略的版本 - 因此<number>.<number>.<number>-dev.<number>
应忽略所有不属于该形式的版本。
我已经尝试了几个正则表达式,但没有达到预期的结果 - 所有版本都在有效版本列表中,以便与当前版本进行比较
<ruleset comparisonMethod="maven"
xmlns="http://mojo.codehaus.org/versions-maven-plugin/rule/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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">
<rules>
<rule groupId="com.abc.de" comparisonMethod="maven">
<ignoreVersions>
<ignoreVersion type="regex">(?!^[((\d*)\.(\d*)\.(\d*)\-dev\.(\d*))]$)</ignoreVersion>
<ignoreVersion type="regex">null</ignoreVersion>
</ignoreVersions>
</rule>
</rules>
`
你能帮忙写正确的正则表达式吗?