首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven- versions plugin: regex用于不遵循特定标记格式的否定版本

Maven- versions plugin: regex用于不遵循特定标记格式的否定版本
EN

Stack Overflow用户
提问于 2020-05-09 22:07:34
回答 1查看 307关注 0票数 0

我使用的是maven-versions-pluginsetProperties目标。我定义了一个ruleset来比较当前的属性版本和包含git分支名称( git标记)的可用版本,并且具有以下格式:

<number>.<number>.<number>-<branch_name>.<number>

例如,如果分支是dev,我希望匹配像1.29.0-dev.5这样的版本,而忽略任何其他标记,比如1.28.0-release.31.8.0-prere10010.1

该规则要求指定要忽略的版本,因此所有非<number>.<number>.<number>-dev.<number>形式的版本都应该被忽略。

我尝试了几个regex,但没有达到预期的结果-所有版本都在有效版本列表中,以便与当前版本进行比较。

代码语言:javascript
复制
<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>

`

你能帮我写正确的正则表达式吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-10 10:42:04

尝试使用负正向查找,然后捕获字符串的其余部分,以防Maven正在寻找完全匹配:

代码语言:javascript
复制
^(?!\d+\.\d+\.\d+-dev\.\d+).*$  
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61704406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档