天天看點

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

建立項目 Eureka-Config

引入pom

<?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.2.6.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <groupId>com.iebt.eureka.config.center</groupId>
    <artifactId>eureka-config</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>eureka-config</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Hoxton.SR3</spring-cloud.version>
    </properties>
    <dependencies>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

	<!-- 加入Spring-cloud-config 必須的jar-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-server</artifactId>
        </dependency>
      <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
       </dependency>

        <!-- 加入security 安全驗證-->
        <!--        <dependency>-->
        <!--            <groupId>org.springframework.boot</groupId>-->
        <!--            <artifactId>spring-boot-starter-security</artifactId>-->
        <!--        </dependency>-->

  



        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </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>

</project>

           

yml 配置

spring:
  application:
    name: eureka-config
  cloud:
    config:
      label: master
      server:
        git:
          uri: http://10.0.0.220:8881/EurekaConfig/Eureka-Config.git
           

label: 分支标簽

profile:配置檔案的簡寫 例如開發環境:config-dev.properties 預設是-dev

這個是重點需要注意的

啟動項目

浏覽器 通路 檢視是否可以擷取 配置檔案

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

圖中紅色 可以不寫 預設是master 若是其他的分支需要寫明 例如 : dev 、test

發現通路失敗!

找來找去 原來是 忘記加@EnableConfigServer了 。。。

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

加好之後 再次請求

這次錯誤不一樣了

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

檢視官網 說明後發現 配置檔案有固定格式的 必須要遵守他的規定才行

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

掃噶 !

原來要指導profile 加上

再試 資料拿到了

config 預設需要指定profile的

當你的 gitlab 上沒有注明 profile的時候 -dev就是預設的取值

Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗
Spring-cloud-config 使用遇到的問題 踩坑記錄(一)拉取配置檔案失敗

踩坑記錄完畢。

繼續閱讀