Spring启动server.port没有在单元测试中获取

时间:2017-11-21 13:57:00

标签: spring configuration

Spring Boot :: v2.0.0.BUILD-SNAPSHOT spring-core :: v5.0.1.RELEASE

我的src / main / resources文件夹中有一个application.properties文件,它是我的类路径的一部分。

在该文件中是server.port

在我的Configuration类中,我有:

 @Value("${server.port}")
 private String localServerPort;

和使用它的bean:

@Bean
public InetSocketAddress tcpSocketAddress() {
  return new InetSocketAddress(Integer.parseInt(this.localServerPort));
}

调用tcpSocketAddress bean时,不会从application.properties文件中检索server.port,此时它为-1。

我尝试了许多不同的注释和方法,而不是手动读取文件,我认为这一点很难理解。

有什么建议吗?

由于

完整配置:

@Configuration
@PropertySource("application.properties")
public class ChronosConfiguration {

  final Logger log = Loggers.getLogger(ChronosConfiguration.class);

  @Value("${server.port}")
  private String localServerPort;

  @Bean
  public CountDownLatch latch() {
    return new CountDownLatch(10);
  }

  @Bean
  public InetSocketAddress tcpSocketAddress() {
    return new InetSocketAddress(Integer.parseInt(this.localServerPort));
  }

}

0 个答案:

没有答案