> 文章列表 > 在Actuator/info 节点上怎么显示maven和git相关的值

在Actuator/info 节点上怎么显示maven和git相关的值

在Actuator/info 节点上怎么显示maven和git相关的值

1. 准备一个spring-boot 的项目,并且暴露Actuator/info的节点

pom.xml

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency>

java code

@SpringBootApplication()
public class TestApp {public static void main(String[] args) {SpringApplication.run(TestApp.class, args);}
}

application.properties

management.info.env.enabled=true

2. 显示Maven相关的值

在application.properties文件里,加入下面key-value属性

info.app.name=@project.artifactId@
info.app.description=@project.description@
info.app.version=@project.version@
info.app.encoding=@project.build.sourceEncoding@
info.app.java.source=@java.version@
info.app.java.target=@java.version@
management.info.env.enabled=true

如果您不使用starter parent,则需要在pom.xml的<build/>元素中包含以下元素

<resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource>
</resources>

执行maven clean compile -DskipTests命令后,你会发现application.properties里定义的maven相关的占位符已经被替换了。

结果如下:

info.app.name=test_project
info.app.description=Parent pom providing dependency and plugin management for applications built with Maven
info.app.version=1.0-SNAPSHOT
info.app.encoding=UTF-8
info.app.java.source=1.8.0_321
info.app.java.target=1.8.0_321

启动spring-boot的项目,访问actuator/info节点,就可以看到下面的信息了。

{"app" : {"name" : "test_project","description" : "Parent pom providing dependency and plugin management for applications built with Maven","version" : "1.0-SNAPSHOT","encoding" : "UTF-8","java" : {"source" : "1.8.0_321","target" : "1.8.0_321"}},
}

3. 显示git 相关的值

            <plugin><groupId>pl.project13.maven</groupId><artifactId>git-commit-id-plugin</artifactId><version>2.1.4</version></plugin>

执行maven clean install-DskipTests 后,你会发现在你的classes目录下面有个git.properties文件生成。

git.branch=dev
git.commit.id=xxx
git.commit.user.name=xxx
......

启动spring-boot的项目,访问actuator/info节点,就可以看到下面的信息了。

{"git" : {"commit" : {"time" : "2023-04-06T12:16:17Z","id" : "e3dd1233"},"branch" : "dev"}
}

一起显示maven和git 的信息

{"app" : {"name" : "test_project","description" : "Parent pom providing dependency and plugin management for applications built with Maven","version" : "1.0-SNAPSHOT","encoding" : "UTF-8","java" : {"source" : "1.8.0_321","target" : "1.8.0_321"}},"git" : {"commit" : {"time" : "2023-04-06T12:16:17Z","id" : "e3dd1233"},"branch" : "dev"}
}