为了账号安全,请及时绑定邮箱和手机立即绑定

Spring Cloud微服务服务器端口强制转换异常

Spring Cloud微服务服务器端口强制转换异常

森林海 2023-11-10 15:28:39
作为 Spring Boot 和微服务架构的新手,尝试使用 Spring Boot Cloud Starter 构建一个简单的应用程序。我使用它spring-cloud-config-server来外部化配置文件(.properties)我这里有 Spring Cloud 配置,它从 git 存储库带来 .properties 文件,另一个微服务 (product-microservice)试图从该微服务访问其配置spring-cloud-config-server。一切工作正常,除了抛出(在第二个微服务内)server.port的属性ClassCastException这是配置文件: https://github.com/mssm199996/microservice-ecommerce-2/blob/master/product-microservice.properties第一个微服务的代码:@EnableConfigServer@SpringBootApplicationpublic class CloudServerConfigApplication {    public static void main(String[] args) {        SpringApplication.run(CloudServerConfigApplication.class, args);    }}<?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.0.RELEASE</version>        <relativePath/> <!-- lookup parent from repository -->    </parent>    <groupId>com.mssmfactory</groupId>    <artifactId>cloud-server-config</artifactId>    <version>0.0.1-SNAPSHOT</version>    <name>cloud-server-config</name>    <description>Demo project for Spring Boot</description>    <properties>        <java.version>1.8</java.version>        <spring-cloud.version>Hoxton.BUILD-SNAPSHOT</spring-cloud.version>    </properties>    <dependencies>        <dependency>            <groupId>org.springframework.cloud</groupId>            <artifactId>spring-cloud-config-server</artifactId>        </dependency>
查看完整描述

2 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

您需要覆盖从 发送的属性config server,然后添加product-microservice.properties以下配置:


spring.cloud.config.allowOverride=true

spring.cloud.config.overrideNone=false

spring.cloud.config.overrideSystemProperties=false


查看完整回答
反对 回复 2023-11-10
?
狐的传说

TA贡献1804条经验 获得超3个赞

终于发现问题了。


这是文件中的一个问题pom.xml,因为我已经从github 存储库下载了上述微服务,并且它使用的是我修改的旧版本的spring ,而没有修改与新版本的 spring冲突的spring 云版本 。


我所做的是,使用intellij 创建一个新模块,spring intializr并向其中添加spring cloud config 客户端依赖项,以便它自动生成pom.xml文件,并在我的微服务中使用它。


这是新的 pom.xml


<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>


    <groupId>com.mproduits</groupId>

    <artifactId>mproduits</artifactId>

    <version>0.0.1-SNAPSHOT</version>

    <packaging>jar</packaging>


    <name>mproduits</name>

    <description>Microservice de gestion des produits</description>


    <parent>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-parent</artifactId>

        <version>2.2.0.RELEASE</version>

        <relativePath/>

    </parent>


    <properties>

        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

        <java.version>1.8</java.version>

        <spring-cloud.version>Hoxton.M3</spring-cloud.version>

    </properties>


    <dependencies>

        <dependency>

            <groupId>org.projectlombok</groupId>

            <artifactId>lombok</artifactId>

            <optional>true</optional>

        </dependency>


        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-web</artifactId>

        </dependency>


        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-data-jpa</artifactId>

        </dependency>


        <dependency>

            <groupId>com.h2database</groupId>

            <artifactId>h2</artifactId>

            <scope>runtime</scope>

        </dependency>


        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-test</artifactId>

            <scope>test</scope>

        </dependency>


        <dependency>

            <groupId>mysql</groupId>

            <artifactId>mysql-connector-java</artifactId>

            <scope>runtime</scope>

        </dependency>


        <!-- ********************************************************************** -->


        <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-configuration-processor</artifactId>

            <optional>true</optional>

        </dependency>


        <dependency>

            <groupId>org.springframework.cloud</groupId>

            <artifactId>spring-cloud-starter-config</artifactId>

        </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>

</project>

希望能帮助到你 !



查看完整回答
反对 回复 2023-11-10
  • 2 回答
  • 0 关注
  • 74 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信