Использование @Profile в spring boot
у меня есть приложение spring boot (1.1.5.Отпустите) и включение моих профилей через конфигурацию protperty spring.profiles.active=MyProfile
профиль активируется правильно, что я вижу по бобам из этого создаваемого профиля.
потом @Controller
используется следующим образом:
@Controller
@RequestMapping("/someUrl")
@Profile("MyProfile")
public class MyController {
...
}
этот контроллер не создается, и URL, используемый в контроллере, не сопоставляется. В том же пакете у меня есть другие контроллеры, которые не ограничены by @Profile
и они получают instsantiated и отображаются, как ожидалось.
так, используя @Profile
аннотация на контроллере что-то, что не совместимо с spring boot? Есть ли другой подход, который я должен использовать?
Edit: кажется, это ошибка в конце концов, как будто я включаю -Dspring.profiles.active=MyProfile
как свойство JVM контроллер получает экземпляр :' (
Edit2: Итак, вот что интересно часть:
если вы определите
spring.profiles.active
наapplication.properties
который загружается по умолчанию из classpath thne он работаетпри переименовании файла
test.properties
и включить его через@PropertySource("classpath:test.properties")
он перестает работать. Поднимет жука против него.
Edit 3: как и было обещано:https://github.com/spring-projects/spring-boot/issues/1417
спасибо!
2 ответов
я отследил это до того, что я считаю ошибкой весной. См.SPR-12111 для более подробной информации.
вы можете определенно аннотировать контроллер с @Profile в Spring Boot, как и выше. Mycontroller получает экземпляр, если myprofile активен. Вы уверены, что" MyProfile " является активным профилем? Вы устанавливаете пружину.свойства профилей?
http://docs.spring.io/spring/docs/3.2.x/javadoc-api/org/springframework/context/annotation/Profile.html Аннотация @Profile может использоваться любым из следующих способов:
Как a аннотации уровня типа для любого класса, прямо или косвенно аннотированного с помощью @Component, включая классы @Configuration в качестве мета-аннотации, с целью составления пользовательских аннотаций стереотипа