zoukankan      html  css  js  c++  java
  • springCloud 搭建eureka服务之天坑

    这里我是采用gradle来管理jar包的。

    1、使用idea创建一个gradle项目。

    2、编辑settings.gradle文件

    rootProject.name = 'jtm'
    //include 'jtm_core'
    //include 'jtm_sys'
    //include 'jtm_eureka'
    
    def dir = new File(settingsDir.toString())
    def projects = new HashSet()
    def projectSymbol = File.separator + 'src'
    
    dir.eachDirRecurse { subDir ->
        def subDirName = subDir.canonicalPath
        def isSubProject = true
        if (subDirName.endsWith(projectSymbol)) {
            for (String projectDir in projects) {
                if (subDirName.startsWith(projectDir)) {
                    isSubProject = false
                    break
                }
            }
            if (isSubProject) {
                projects << subDirName
                def lastIndex = subDirName.lastIndexOf(projectSymbol)
                def gradleModulePath = subDirName.substring(dir.canonicalPath.length(), lastIndex).replace(File.separator, ':')
                println "include " + gradleModulePath
                include gradleModulePath
            }
        }
    }

    3、编辑build.gradle文件

    buildscript {
        ext {
            springBootVersion = '2.0.4.RELEASE'
            springCloudVersion = 'Finchley.SR1'
        }
        repositories {
            maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
            mavenCentral()
        }
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        }
    }
    
    allprojects {
        apply plugin: 'java'
        apply plugin: 'idea'
        apply plugin: 'org.springframework.boot'
        apply plugin: 'io.spring.dependency-management'
    
        group 'com.dqcer'
        version '1.0-SNAPSHOT'
        sourceCompatibility = 1.8
    
        repositories {
            maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
            mavenCentral()
        }
    
        dependencies {
            testCompile('org.springframework.boot:spring-boot-starter-test')
        }
    
        dependencyManagement {
            imports {
                mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
            }
        }
    }

    4、在当前项目中新建子项目jtm_eureka

    5、修改子项目中的build.gradle文件

    dependencies {
        compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-server')
    }

    6、在子项目中添加配置文件后,运行。

    报错:

    com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
    Caused by: java.net.ConnectException: Connection refused: connect

    网上查阅资料后,更改子项目中的配置文件yml如下:

    server:
    port: 9001
    servlet:
    context-path: /eureka
    eureka:
    instance:
    hostname: localhost
    client:
    fetch-registry: false
    register-with-eureka: false
    service-url:
    defaultZone: http://${eureka.instance.hostname}:${server.port}${server.servlet.context-path}

    再次运行,还是这个错,网上说将main方法的注解改了、驼峰名称,或者jar缺失等。都试过。并没有什么作用。冷静查看输入日志发现端口号是8080

    多次尝试后得出结论,配置文件名必须为application.yml,不然程序找不到,就会默认配置后,不管如何发现并没有什么用。

  • 相关阅读:
    开窗函数Over
    CodeSmith
    codeMatic代码生成器
    Mvc身份认证方式
    Neo4j入门详细教程
    pathlib路径问题
    python_跨文件二维全局变量传参
    .md图片链接转存并替换路径,及相关报错解决方法
    ERROR: column "xxxxxx" does not exist解决办法
    SCP远程传输文件
  • 原文地址:https://www.cnblogs.com/dqcer/p/9875588.html
Copyright © 2011-2022 走看看