转载

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

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

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

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

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

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

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

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

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

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

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

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

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

mvn archetype:create-from-project

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

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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了。

添加方式如下

Linux使用IDEA配置maven的web项目骨架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。

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

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

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

Linux使用IDEA配置maven的web项目骨架archetype(模板) 自定义骨架

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

原文  https://www.linuxidc.com/Linux/2019-07/159622.htm
正文到此结束
Loading...