2016-11-28 2 views
1

Я пытаюсь прочитать в простом yml-файле для приложения Spring Boot, расположенного в ресурсах/wtf.yml. Следующее приложение работает, если используется имя файла application.yml по умолчанию, но если я не изменю имя файла. Кто-нибудь знает, почему это не работает?Spring Boot YAML Config с уникальным именем файла

import org.springframework.beans.factory.annotation.Value; 
import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.context.properties.ConfigurationProperties; 
import org.springframework.boot.context.properties.EnableConfigurationProperties; 

import javax.annotation.PostConstruct; 

@EnableConfigurationProperties 
@SpringBootApplication 
@ConfigurationProperties(locations = {"wtf.yml"}) //classpath:wtf.yml 
public class SomeApp { 

    public static void main(final String[] args) { 
    SpringApplication.run(SomeApp.class, args); 
    } 

    @PostConstruct 
    public void init() { 
    System.out.println(readTimeout); 
    } 

    @Value("${readTimeout}") 
    public int readTimeout; 
} 

ответ

0

Вы можете использовать spring.config.name или spring.config.location свойства, как описано в Spring Boot guide.

+1

Было бы неплохо иметь возможность установить местоположение файла свойств без предоставления свойства командной строки или в качестве аргумента в другом файле yaml. – newToScala

Смежные вопросы