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));
}
}