从pom 文件中,读取 yml中的内容

我的需求是要在spring boot的打包包名上加上目标环境,就是 dev qa prod 什么的。

这些是在打包时指定在application.yml文件中的,所以需要去读取yml文件中的属性。

在网上看了一下,基本都是读properties的,没有找到读yml的。

后来通过联想查找,找到一个项目 https://github.com/ozimov/yaml-properties-maven-plugin

解决了我的问题,直接上代码:

<build>

        <finalName>main-${spring.profiles.active}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>it.ozimov</groupId>
                <artifactId>yaml-properties-maven-plugin</artifactId>
                <version>1.1.3</version>
                <executions>
                    <execution>
                        <phase>initialize</phase>
                        <goals>
                            <goal>read-project-properties</goal>
                        </goals>
                        <configuration>
                            <files>
                                <file>src/main/resources/application.yml</file>
                            </files>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

其中 ${spring.profiles.active} 就是要读取的属性名称。

src/main/resources/application.yml 是yml文件地址,src是相对pom文件的。

猜你喜欢

转载自www.cnblogs.com/eclipse-/p/10625461.html