自定义archetype脚手架创建spring cloud项目

本文介绍如何使用Maven Archetype创建微服务项目模板,包括配置依赖、编写常用配置和工具类,以及如何生成并使用自定义的Archetype。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

还记得吗,我们在创建maven项目的时候,曾经使用过qucikstart,webapp等这些maven archetype。使用archetype可以快速创建出具有一定组织结构或者一定功能的项目。比如:qucikstart 可以src/main/java,src/main/resources等这些目录,webapp 可以快速创建出符合web应用目录规范的项目。
现在让我们想一下开发微服务项目的时候我们创建一个微服务一般是怎么做的?

  1. 第一种方式

1)创建一个普通maven工程
2)编写pom.xml导入springboot ,nacos,feign,sleuth,zipkin等依赖
3)创建编写application.yml或者bootstrap.yml配置文件
4)创建启动类

  1. 第二种方式
    通过spring initializr创建项目
    在这里插入图片描述

在这里插入图片描述
创建编写application.yml或者bootstrap.yml配置文件,编写启动类。
问题:
上述两种创建的过程有没有重复性工作呢?
nacos,sleuth一些配置能不能也一块随着项目创建出来呢?
项目中的一些自己个性化的东东可不可以也随之创建呢 ?
接下来我们自己创建一个mavne archetype模板,以后用我们自己的模板创建项目。解决上述问题。是不是有点脚手架的感觉。。

创建cloud maven archetype

  1. 创建一个普通maven项目
    File–>new module—>maven–>next
    在这里插入图片描述
    在这里插入图片描述
    展示;在这里插入图片描述
    module的名字我由于已经创建了,这里飘红。可忽略。
    点击finish完成。

  2. 编写pom.xml

1)定义版本号

 <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <junit.version>4.12</junit.version>
        <log4j.version>1.2.17</log4j.version>
        <lombok.version>1.16.18</lombok.version>
        <mysql.version>5.1.47</mysql.version>
        <druid.version>1.1.16</druid.version>
        <mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version>
    </properties>

我这里为了看着方便,spring boot和cloud的版本号没有去引用properties.
spring boot和cloud的版本怎么选择呢?这里可以看一下官网提供的对应关系。访问这个网址:
https://start.spring.io/actuator/info

在这里插入图片描述

 <dependencyManagement>
        <dependencies>
            <!--spring boot 2.2.2-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.2.1.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--spring cloud Hoxton.SR1-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--spring cloud alibaba 2.1.0.RELEASE-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.1.0.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>${mysql.version}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>${druid.version}</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-s
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值