引言
springboot获取项目的版本其实pom集成git的插件就可以了,但是只能获取git的提价的commit-id等简单的信息,如项目的版本号、名称等这是无法获取的,那么来谈谈如何获取自己想要的信息呢,springboot集成git插件会生成git.properties文件及maven会生成MANIFEST.MF及pom文件就可以获取所有的相关信息,这样就可以根据需要来进行提取了
读取git.properties文件
集成git和maven插件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
</plugin>
</plugins>
</build>
使用maven包时会在classes文件在生成git.properties文件,文件信息如下:
分支、commit号、构建的时间等信息
在META-INF下会生成MANIFEST.MF文件,文件信息如下:
可以看到版本号、项目名称等
既然能得到文件,那就好办了,因为git.properties和MANIFEST.MF有相似的信息,我这块按git.properties中的信息。
读取git.properties信息工具类
@Component
@PropertySource(value = {"classpath:git.properties" }, ignoreResourceNotFound =true)
public class GitUtil {
@Value("${git.branch}")
private String branch;
@Value("${git.commit.id}")
private String gitCommitId;
@Value("${git.remote.origin.url}")
private String gitUrl;
@Value("${git.build.time}")
private String buildDate;
@Value("