Spring Boot Maven插件系统变量

时间:2018-12-07 23:01:19

标签: java spring maven spring-boot

Spring Boot应用程序无法识别我通过Maven Spring Boot插件设置的系统变量。

<profile>
            <id>local</id>
            <build>
                <testResources>
                    <testResource>
                        <filtering>true</filtering>
                        <directory>src/test/resources</directory>
                    </testResource>
                </testResources>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-failsafe-plugin</artifactId>

                    </plugin>
                    <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin</artifactId>
                        <configuration>
                          <systemPropertyVariables>
                            <my.prop.one>2017-06-01</my.prop.one>
                            <my.prop.two>2017-06-31</my.prop.two>
                            <my.prop.three>1000</my.prop.three>
                          </systemPropertyVariables>
        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

我正在config类中以这种方式在Java中访问它

@Value("${my.prop.one}")
    private String one;
@Value("${my.prop.two}")
    private String two;
@Value("${my.prop.three}")
    private String one;

当我运行mvn -Plocal spring-boot时:运行spring boot应用程序失败,同时在config类中创建bean并出现以下错误

 Could not resolve placeholder 'my.prop.one' in value "${my.prop.one}"
-> [Help 1]

由于某种原因,我的Spring Boot应用程序无法读取Spring Boot Maven插件设置的系统变量。 编辑: 问题可能是重复的,但是发生在我身上的是我的父Bom拥有2.0.3版本的插件,因为我正在阅读最新的插件版本文档,因此语法发生了变化。我在pom中明确提到了2.1.1.RELEASE版本,并解决了该问题。

0 个答案:

没有答案