保姆级教程:maven archetype生成模板工程详细教程


前言

一、新建maven工程 cloud-archetype

在这里插入图片描述
点击next
在这里插入图片描述
设置工程名,以及项目坐标,点击完成。
在这里插入图片描述

二、写pom

第一步,我们的项目框架已经搭建完成,接下来添加pom依赖文件;
添加最重要的maven-archetype-plugin插件,其余功能按自己需求添加。

<?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.example</groupId>
    <artifactId>cloud-archetype</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <!--spring boot 2.2.2-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>2.3.1.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-archetype-plugin -->
        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-archetype-plugin</artifactId>
            <version>3.2.1</version>
        </dependency>
    </dependencies>

    <build>
        <finalName>cloud-archetype-template</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-archetype-plugin</artifactId>
                <version>3.2.1</version>
                <configuration>
                    <propertyFile>archetype.yaml</propertyFile>
                    <encoding>UTF-8</encoding>
                    <archetypeFilteredExtentions>java,xml,yaml,yml,properties</archetypeFilteredExtentions>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

同时,在pom文件同级目录下创建archetype.xml,并添加自定义项目名!
在这里插入图片描述

三、生成模板工程

在新建项目pom文件同级处,输入maven命令。

mvn archetype:create-from-project

出现下面代码,恭喜你你本地的maven配置没有问题。

[INFO] Building jar: E:\*\cloud-archetype\target\generated-sources\archetype\target\cloud-archetype-archetype-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.873 s
[INFO] Finished at: 2022-05-02T13:23:10+08:00
[INFO] Final Memory: 14M/307M
[INFO] ------------------------------------------------------------------------
[INFO] Archetype project created in E:\*\cloud-archetype\target\generated-sources\archetype
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.668 s
[INFO] Finished at: 2022-05-02T13:23:11+08:00
[INFO] Final Memory: 15M/243M
[INFO] ------------------------------------------------------------------------

如果出现mvn无法识别,请移步我的另一篇博客:mvn archetype:create-from-project报错解析,如果还是没有解决,可以下方留言。

四、修改部分配置

删除文件中默认项目名,路径:target/generated-sources
/archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
在这里插入图片描述
修改标记处,项目名称替换成 ${project-name}
在这里插入图片描述

五、将生成的模板工程打包到本地仓

进到archetype工程pom文件同级目录下
在这里插入图片描述
将模板工程install到本地仓库,用于下一步创建项目

mvn clean install

六、使用模板工程创建新项目

创建项目只需要一行命令

mvn archetype:generate
-DgroupId=com.tianjingle.wang         #新建项目的工程名
-DartifactId=demotianjingle           #要创建的项目名称
-Dversion=1.0.0-SNAPSHOT              #要创建的项目的版本号
-Dpackage=com.tianjingle.wang         #要创建的项目的基础包名

-DarchetypeGroupId=com.asiainfo         #./m2下的xml里的
-DarchetypeArtifactId=cloud-archetype-archetype  #./m2下的xml里的
-DarchetypeVersion=1.0-SNAPSHOT     #./m2下的xml里的
-B
-DarchetypeCatalog=local               #从本地仓库选取模板
-DinteractiveMode=false

根据上面指令 控制台报错 no pom !!!
我很困惑,我需要用模板工程创建新工程,难道我还要新增一个pom文件?
后面我摸索,使用下面这个命令:

mvn archetype:generate "-DarchetypeGroupId=com.*"  "-DarchetypeArtifactId=cloud-archetype-archetype" "-DarchetypeVersion=1.0-SNAPSHOT"

指定了模板工程的坐标,再根据提示创建我们需要的工程
本人亲测,创建成功了!如有问题,可在下方留言。
另外,如果有大佬知道上述报错,为什么会提示no pom,烦请告知。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

颓了呀

收到你温暖的礼物,超开心,感激

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值