我使用japicmp
API遇到此问题,但每个插件都可能存在比较API的问题。
我们说我已经通过以下方式定义了japicmp
Maven插件:
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<version>0.9.3</version>
<configuration>
<oldVersion>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${lastBaseVersion}</version>
<type>jar</type>
</dependency>
</oldVersion>
<newVersion>
<!-- snip -->
</newVersion>
</configuration>
</plugin>
这里的问题是lastBaseVersion
属性。因为我当然不想在 pom.xml 中维护另一个版本字段。但是,我无法找到如何配置插件以使用最新版本,即使对我来说这是默认用例。
This post对 Found it ,它是一个人工维护的财产,所以它对我的情况没有帮助。xwiki.compatibility.previous.version
API使用revapi
,但我无法确定该值的来源。
如何将我的项目的API与最新版本进行比较?
答案 0 :(得分:0)
您可以查看具有build-helper-maven-plugin目标的released-version,该目标看起来就像您需要的那样。
答案 1 :(得分:0)
没有默认的maven属性自动包含上次发布的版本。 maven插件必须查找所有版本并过滤掉最后一个版本。关键是你也可能会释放像1.0.0-RC1应由用户决定0.0.9或1.0.0-RC1是否是最后一次发布&#34;版本
但是japicmp可以自动从存储库中获取最新版本。您只需在配置中省略<oldVersion/>
块。然后它采用没有SNAPSHOT的最新版本。您可以选择提供正则表达式,以帮助确定要采用的版本:oldVersionPattern
。