说明:本文说的骨架就是 archetype,也可以理解为模板,总是就是指你创建项目时的基本配置。

前言:在使用IDEA创建maven的web项目时,一般都是直接使用提供的默认web项目,如图

然而创建之后,整个项目就几乎都是默认配置,什么都没有。

那么问题来了,(前提是使用maven)我能不能创建一个ssm的web项目骨架,作为一个模板,然后以后

直接按着这个模板创建呢?这样的话就不用每次都修改web.xml、pom.xml这些东西了,也不用每次添加

各种ssm的配置文件了。答案是可以的。方法如下:

1、搭建好基本的项目骨架

上面就是我常用的骨架,主要就是一些配置文件和web.xml、pom.xml的内容

为什么没有java、test的源代码文件夹呢?因为我之前试过了,当配置的时候,这些文件夹

都没有生成,生成的只有resource文件夹,我还没系统学习maven,所以具体也不知道原因。

但是,即使是这些配置文件就已经满足我的需求了,至少不用每次想练个ssm的demo都要重新配置

2.使用maven的命令创建骨架

在1步骤搭建好骨架之后,需要创建maven的archetype(骨架),也就是生成一些相关的东西,比如jar包。

在项目的根目录下(即项目的pom.xml文件所在目录)下执行maven命令:

mvn archetype:create-from-project

然后就创建成功了,如下图

3.使用maven的命令安装骨架

在archetype的根目录下(即: 项目根目录\target\generated-sources\archetype)再执行以下maven命令:

mvn install

这样就把该archetype安装到了本地的maven 仓库中了

错误:

但是,我遇到了一点问题,错误我忘了截图,反正就是说在仓库中找不到目录,

No such file or directory

如果碰到这个问题,不要慌,那是因为仓库中没有创建文件夹。

文件夹的名字应该是groupId的值。创建之后,再次执行 maven install 就能安装成功了。

4.使用archetype

使用可以用maven命令行的方式,但在本文中是使用IDEA。

当你在你的maven仓库中看到你安装的骨架之后,就可以在IDEA中添加archetype了。

添加方式如下

在创建maven项目时,选择Create from archetype,然后点击Add Archetype

之后就在弹出窗口填上你的 groupId、artifactId、version就可以了。

然后选择你刚创建的模板就可以创建成功了。

补充:

1、使用范围

按照上面方法创建的骨架,一般都是你本地电脑使用的,也就是说如果别人想用,需要用另外的方法。

这里就不阐述了。

2、删除骨架

当你不想使用这个骨架,或者骨架有误的时候,需要删除,该怎么删除呢?主要是删除两个地方的东西。

步骤如下:

(1)删除IDEA中的骨架

主要是要删除UserArchetypes.xml文件的内容。不同操作系统的位置不一样。

Mac系统:

一般是在${...}/.IntelliJIdea2018.3/Maven/Indices/UserArchetypes.xml

Linux系统:

一般是在${...}/.IntelliJIdea2018.3/system/Maven/Indices/UserArchetypes.xml

Windows系统:

一般是在${...}/.IntelliJIdea2018.3/system/Maven/Indices/UserArchetypes.xml

${...}指的是你的安装路径,以你的为主

主要就是这个路径下有个UserArchetypes.xml文件,然后打开删除里面的<archetype>标签即可

(2)删除maven仓库中的骨架

直接在你的本地仓库中按照你创建的骨架的groupId、artifactId寻找,之后删除文件夹即可。

比如我这里是直接删掉my文件夹就行了。

3.骨架命名

你的自定义骨架的groupId千万不要跟常见的名词重复,不然就会哭到爆。

命名是以这个来的  groupId、artifactId、version

比如我的骨架是groupId是my

然后我就用这个骨架新建项目,然后我就填一般的groupId和artifactId。

也就是说 你的自定义骨架是my.yellow-archetype

你用这个骨架创建的项目是cn.test

你就会发现你创建的项目里面,所有出现mybatis的词的地方,都变成了cnbatis

所以综上所述,把你的groupId命名为乱七八糟就行了,比如fsjdghsjkghsji

参考链接:

https://blog.csdn.net/qq_21251983/article/details/52252970?utm_source=blogxgwz6

https://stackoverflow.com/questions/4361567/where-are-added-archetypes-stored-in-intellij

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架的更多相关文章

  1. eclipse中配置maven的web项目

    提高效率,一般都会使用IED如eclipse来帮助开发.eclipse中单独建立一个web项目或者是maven项目是可以通过插件很容易完成的,但是如果要结合2者,就需要先建立一个,然后再转换或使原型. ...

  2. maven构建web项目,用jetty测试的配置pom.xml

    maven构建web项目,用jetty测试的配置pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmln ...

  3. 【maven】 在 MyEcplise上使用maven搭建Web项目

    二.在My Ecplise上使用Maven搭建Web项目 1.新建一个maven项目   2.create一个简单的骨架 3.就像在ecplise中一样设置项目的以下配置   4.新创建的项目结构如下 ...

  4. step2-------使用myeclipse创建maven java web项目

    1.文章内容概述: 在对项目需求进行分析之后,决定使用maven对我的java web项目进行管理,这篇文章记录了使用myeclipse创建maven java web项目的过程. 2.开发环境: j ...

  5. Maven学习总结(七)——eclipse中使用Maven创建Web项目

    一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示:

  6. Maven发布web项目到tomcat

    在java开发中经常要引入很多第三方jar包:然而无论是java web开发还是其他java项目的开发经常会由于缺少依赖包引来一些不必要的异常.常常也是因为这样的原因导致许多简单的缺包和版本问题耗费大 ...

  7. Maven——eclipse中使用Maven创建Web项目

    原文:http://www.cnblogs.com/xdp-gacl/p/4054814.html 一.创建Web项目 1.1 选择建立Maven Project 选择File -> New - ...

  8. 转】Maven学习总结(七)——eclipse中使用Maven创建Web项目

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4054814.html 感谢! 一.创建Web项目 1.1 选择建立Maven Project 选择File -& ...

  9. 使用Maven构建Web项目的目录结构

    1.Web项目的目录结构     基于Java的Web项目,标准的打包方式是WAR.与JAR比较,包含更多的内容,比如JSP文件.Servlet.Java类.web.xml配置文件.依赖JAR包.静态 ...

随机推荐

  1. windowns10安装httpd

    下载页面:https://www.apachehaus.com/cgi-bin/download.plx 下载内容:httpd-2.4.38-o102r-x64-vc14-r2.zip 解压到本地磁盘 ...

  2. 深度优先搜索(DFS)与广度优先搜索(BFS)的Java实现

    1.基础部分 在图中实现最基本的操作之一就是搜索从一个指定顶点可以到达哪些顶点,比如从武汉出发的高铁可以到达哪些城市,一些城市可以直达,一些城市不能直达.现在有一份全国高铁模拟图,要从某个城市(顶点) ...

  3. ABP学习笔记总汇

    首先立下一个目标,未来一段时间开始学习ABP. 先立一个flag.之后会再次更新目录和文章连接 目录 1.ABP学习笔记(1)-使用mysql

  4. Xapian索引-文档检索过程分析之匹配百分比

    本文属于文档检索过程分析的一部分,重点分析文档匹配百分比(percent)的计算过程. 1 percent是什么? 我们之前分析的检索demo: Xapian::Query term_one = Xa ...

  5. 当 “HTTP” 先生遇上“S”小姐

    情人节的晚上,天空中淅淅沥沥的下着带有些寒意的小雨.HTTP 先生孤零零的坐在咖啡厅中,对着面前的电脑发呆.他有意的屏蔽掉了周边情侣们的窃窃私语,这对单身的他来说是狗粮,也是一阵阵伤害.这时,咖啡厅的 ...

  6. ToastCustom【自定义显示风格的Toast】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 基于系统Toast的自定义显示风格的Toast. 效果图 代码分析 ToastCustom类基于系统Toast,不是继承Toast, ...

  7. bootsect及setup

      BIOS和bootsect CPU加电即进入16位实模式 硬件逻辑设计为加电瞬间强行设置:CS=0xF000,IP=0xFFF0,CS:IP=0xFFFF0 而BIOS程序的入口地址即0xFFFF ...

  8. 补习系列(15)-springboot 分布式会话原理

    目录 一.背景 二.SpringBoot 分布式会话 三.样例程序 四.原理进阶 A. 序列化 B. 会话代理 C. 数据老化 小结 一.背景 在 补习系列(3)-springboot 几种scope ...

  9. 表单数据验证方法(一)—— 使用validate.js实现表单数据验证

    摘要:使用validate.js在前端实现表单数据提交前的验证 好久没写博客了,真的是罪过,以后不能这样了,只学习不思考,学的都是白搭,希望在博客园能记录下自己学习的点滴,虽然记录的都是些浅显的技术, ...

  10. C# 数组Array

    数组是对相同类型的一组数据的封装.数组定义的时候,要说明是对哪一种类型的封装,并且要指定长度. using System; using System.Collections.Generic; usin ...