0

我有一个 Java 项目,该项目仍处于早期阶段。目前还没有真正的版本,所以我在 pom.xml 中将版本设置为 1.0.0-SNAPSHOT。

在每次提交之前,我使用以下命令直接从 Maven 执行声纳分析:

mvn sonar:sonar

Sonar 具有记录 KPI 随时间变化的出色能力。但是,它仅适用于一个版本。现在,由于我不更新我的版本号,它会覆盖最后的分析结果并将其替换为当前结果。

我想知道如何解决这个问题。我不想每天手动增加版本号,因为这对我来说似乎不太自然。

我还有什么其他选择?我应该使用其中一个 Maven 插件将内部版本号添加到版本字符串中,以便我拥有唯一的版本吗?你还有其他策略吗?

4

3 回答 3

1

如果您想在每个版本中增加版本号,推荐使用Maven 发布插件

但是如果你想每天增加版本号,甚至每次构建,你可以使用唯一的版本号,比如可以从 Maven 构建阶段获得的时间戳,在 Maven 2.1 之后,它有你可以使用的内置${maven.build.timestamp},你可以使用格式

<properties>
    <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
</properties>

有关更多信息,您可以访问http://maven.apache.org/guides/introduction/introduction-to-the-pom.html

于 2012-08-07T12:32:57.863 回答
1

Sonar 会保留每个快照构建的指标(基于您的配置)。然后,您可以适当地重命名快照并使用它们来获取历史信息

于 2012-08-07T13:18:02.163 回答
0

你说你还没有发布。只要你这样做,Maven 发布插件就是一个推荐。它处理发行版附带的 SVN 相关内容。

不过,我不确定这是否有助于您处理 SNAPSHOT 的日常工作。

于 2012-08-07T12:16:04.800 回答