首页 > 解决方案 > 尝试使用 spring 服务器和云访问 .properties 文件。适用于本地仓库但不适用于 git 远程仓库

问题描述

我正在使用 springboot 开发微服务。在配置服务器时,一切都很顺利。我正在使用云版本 2020.0.0 开发 springboot 2.4。

  1. 在主应用程序类上启用 @EnableConfigServer
  2. 添加了引导依赖
  3. 创建了新的 git repo 和属性文件
  4. 将配置添加到 pom 文件

但是当我使用本地 git 存储库时,我的服务器会响应,我可以通过 URL 访问应用程序(例如 localhost:8888/client/default)。

但是,当我提供远程 git URL 时,服务器不会响应任何内容。我的 URL 是正确的,我也提供了用户名和密码。没有错误,什么也没有。springboot 创建的只有 404 错误页面。

这里有什么问题?谁能帮忙?

聚甲醛::

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.4.2</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.config</groupId>
<artifactId>server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>server</name>
<description>Demo project for Spring Boot</description>
<properties>
    <java.version>11</java.version>
    <spring-cloud.version>2020.0.0</spring-cloud.version>
</properties>
<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-bootstrap</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
    </repository>
</repositories>

主类::

@SpringBootApplication
@EnableConfigServer
public class ServerApplication {

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

}

应用程序属性::

spring.config.name= server
server.port= 8888

spring.cloud.config.server.git.uri=https://github.com/chiranjiviNeupane/MicroserviceRepo
spring.cloud.config.server.git.username= chiranjiviNeupane
spring.cloud.config.server.git.password= ********

spring.cloud.config.server.git.clone-on-start= true

management.endpoints.web.exposure.include= *

但是当我用本地仓库替换 spring.cloud.config.server.git.url 时工作正常。但是,实现远程 git 地址是行不通的。它也没有给出任何错误。

标签: springspring-bootgithub

解决方案


我发现您的 git 存储库没有main分支master,这是云配置服务器的默认分支。要解决此问题,您需要使用属性运行客户端或从分支-Dspring.cloud.config.label=main创建分支。mastermain


推荐阅读