我们最近已升级到Spring Boot 2.0,并注意到应用程序上下文ID不再是唯一的。以前,如果我们设置spring.application.index
,则ContextIdApplicationContextInitializer
将使用它来构造应用程序上下文ID。现在我看到在{2.0.0.1}春天。最好如何设置ID?目的是将主机名作为ID的一部分包括在内,以保持系统的独特性。 Spring Cloud文档仍然引用了旧方法:the implementation was significantly changed。
更新
曾经发生过的事情是,spring.application.name
是在项目的源代码(即my-app)中设置的,而spring.application.index
是在运行时(即1e4f630be)中设置的,然后是applicationContext.id
的值为my-app-1e4f630be
。现在,它始终具有my-app-1
的值。 Service ID Must Be Unique的实现不再引用spring.application.index
。这是版本之间的重大变化,我还没有找到有关如何使用Spring Boot 2.0正确自定义ID的示例或文档。