与Maven check that all dependencies have been released非常相似,Maven也应该自动检查当前版本的版本不是SNAPSHOT。最简单的方法是什么?
wlp8pajw1#
maven-enforcer-plugin似乎没有为这个任务提供内置规则。但是,requireProperty可以配置为执行检查。我在release配置文件中添加了以下代码片段。第一次执行检查项目版本不包含字符串SNAPSHOT。第二次执行检查没有依赖项是SNAPSHOT版本。
maven-enforcer-plugin
requireProperty
release
SNAPSHOT
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.3.0</version> <executions> <execution> <id>enforce-property</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireProperty> <property>project.version</property> <message>"Project version must be specified."</message> <regex>^(?!.*SNAPSHOT).+$</regex> <regexMessage>"Project version must not contain -SNAPSHOT."</regexMessage> </requireProperty> </rules> <fail>true</fail> </configuration> </execution> <execution> <id>enforce-no-snapshots</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireReleaseDeps> <message>No Snapshots Allowed!</message> </requireReleaseDeps> </rules> <fail>true</fail> </configuration> </execution> </executions> </plugin>
1条答案
按热度按时间wlp8pajw1#
maven-enforcer-plugin
似乎没有为这个任务提供内置规则。但是,requireProperty
可以配置为执行检查。我在
release
配置文件中添加了以下代码片段。第一次执行检查项目版本不包含字符串SNAPSHOT
。第二次执行检查没有依赖项是SNAPSHOT
版本。