我正在Spring Boot中创建一个基本的客户端/服务器配置应用程序,但是当我启动我的客户端应用程序时,我有这个:
... INFO [bootstrap,,,] ... Fetching config from server at: http://myConfig.com:8080
... INFO [bootstrap,,,] ... ConfigServicePropertySourceLocator : Located environment: name=application, profiles=[default], label=master, version=..., state=null
编辑:问题是我使用我的应用配置了我的应用名称,所以我期待 name = my-app 而不是 name = application 。所以客户端没有获得预期的配置。
EDIT2:配置服务器在独占虚拟机中运行,因此8080端口可用(仅适用于配置服务器)。我的配置服务器中没有其他任何东西在运行。
我阅读了一些帖子,我可以标记以下内容:
1)我有
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
在我的 pom.xml 文件
中2)位于 my-app \ src \ main \ resources 中的我的bootstrap.properties具有以下内容:
spring.application.name=my-app
server.port=8080
spring.cloud.config.uri=http://myConfig.com:8080
3)当我使用浏览器访问http://myConfig.com:8080/my-app/default/master时,我得到了相应的配置,因此服务器运行正常。
4)我的配置服务器过去有一个 application.properties ,但现在没有(我认为这是问题 - 一个默认属性文件 - 但是我精神焕发,问题仍然存在)
5)第一次运行我的应用程序时出现问题,我猜这与健康状况检查无关。
您对该应用为何试图说“ name = application ”而不是真实姓名有任何想法吗?我在设置中错过了什么? 提前谢谢!
EDIT3:更多数据: 我的配置服务器正在返回:
{"name":"my-app","profiles":["default"],"label":"master","version":"...","state":null,"propertySources":[{"name":"file://myPath/my-app.properties","source":{"spring.rabbitmq.username":"MYUSER","spring.datasource.url":"jdbc:postgresql://someData?ssl=true","spring.datasource.username":"MyUser","spring.jpa.hibernate.ddl-auto":"update","security.user.name":"MyUser2","spring.datasource.driverClassName":"org.postgresql.Driver", AND OTHER SPECIFIC DATA...}}]}