Maven学习—如何在IDEA中配置Maven?又如何创建Maven工程?(详细攻略)

目录

前言

1.在IDEA中配置Maven

2.创建Maven项目

(1)Maven:创建普通Maven工程

[(2)Maven Archetype:创建Maven模板工程](#(2)Maven Archetype:创建Maven模板工程)


前言

本篇博客将详细的介绍在IDEA中如何配置Maven,以及如何创建一个Maven项目;前提是已经安装且配置好了Maven环境,没有安装的小伙伴,可以参考这篇博客:

Maven学习------Maven的下载、安装与配置(详细攻略!)-CSDN博客

1.在IDEA中配置Maven

(1)首先我们打开IDEA,打开setting设置界面,

在左边栏找到 Build, Execution, Deployment ------> Build Tools ------> Maven :

(2)然后看右边栏,我们要配置三个地方

  • Maven home path : 这个地方配置为你Maven的安装目录
  • User settings file : 勾上左边Override,然后这个地方配置为你Maven安装目录下 conf文件夹中的setting.xml文件
  • Local repository : 这个地方配置为你的Maven本地仓库

(通常,如果你的setting.xml中设置过本地仓库,当上一步User settings file设置好后,这里会自动定位到你的本地仓库路径;若没有,则要手动配置一下)

(OK,到这里你的IDEA就已经配置好了Maven的环境🐶)接下来就可以创建Maven项目了

2.创建Maven项目

在新版IDEA中创建Maven项目有两种方式:Maven和Maven Archetype。

(1)Maven:普通Maven工程

(该方式创建的Maven项目,目录结构中只包含Maven项目中一些最基本的文件夹与配置文件)

**创建方法:**打开idea--->File(文件)--->New(新建)--->project(项目)

点开后,创建项目的具体操作如下:

最后点击Create,项目创建完成,创建后的项目的目录结构如下图:

👌至此,一个普通的Maven项目就成功创建好了。

如果不懂图中的一些概念,例如:坐标、pom.xml、groupId;请参考我的另一篇博客,(里面有maven核心概念的介绍),链接如下🔗

Maven详解(学习、安装、配置)------看这个一篇就够了_maven包-CSDN博客文章浏览阅读1.3k次,点赞42次,收藏30次。(之前我们创建项目,需要确定项目的目录结构,比如src 存放Java源码, resources存放配置文件,webContent放前端页面,还要配置环境比如JDK的版本等等,如果有多个项目 那么就需要每次自己搞一套配置,十分麻烦。操作麻烦,如果人家版本更新了,或者我们的项目需要更新某个模块,导致之前加入的依赖包,又需要重新下载最新版本,重新加入到项目里。:Maven公司团队所管理的服务器,架设在Internet上,为全世界的所有Maven工程服务,基本上存储着99%的jar包。①阿里中央仓库(首选推荐)_maven包https://blog.csdn.net/Future_yzx/article/details/140384071

(2)Maven Archetype:创建Maven模板工程

什么是Archetype? Archetype就是模板原型的意思。在新版IDEA中,使用Maven Archetype创建项目时,Maven Archetype针对不同的项目,为我们提供了41中项目模版,其中最常用的三个为:

  • maven-archetype-webapp

该模版针对动态web项目,会自动创建好WEB环境,不用我们再去project structure中自己配置了,避免手动创建文件夹和web.xml文件。

  • maven-archetype-quickstart

该模版是快速开始一个项目,会为我们创建好java环境和test环境 ,而且连一个最开始的类都给我们创建好

  • no archetype 表示不使用模版,创建普通的Maven工程,项目中包含最基本的目录结构。

**创建方式:**打开idea--->File(文件)--->New(新建)--->project(项目)

点开后,的具体操作如下:

ok,你的Maven Archetype模板项目就创建好了。

Maven Archetype的41种骨架:

...>mvn archetype:generate

1: internal -> appfuse-basic-jsf (创建一个基于Hibernate,Spring和JSF的Web应用程序的原型)

2: internal -> appfuse-basic-spring (创建一个基于Hibernate,Spring和Spring MVC的Web应用程序的原型)

3: internal -> appfuse-basic-struts (创建一个基于Hibernate,Spring和Struts 2的Web应用程序的原型)

4: internal -> appfuse-basic-tapestry (创建一个基于Hibernate, Spring 和 Tapestry 4的Web应用程序的原型)

5: internal -> appfuse-core (创建一个基于 Hibernate and Spring 和 XFire的jar应用程序的原型)

6: internal -> appfuse-modular-jsf (创建一个基于 Hibernate,Spring和JSF的模块化应用原型)

7: internal -> appfuse-modular-spring (创建一个基于 Hibernate, Spring 和 Spring MVC 的模块化应用原型)

8: internal -> appfuse-modular-struts (创建一个基于 Hibernate, Spring 和 Struts 2 的模块化应用原型)

9: internal -> appfuse-modular-tapestry (创建一个基于 Hibernate, Spring 和 Tapestry 4 的模块化应用原型)

10: internal -> maven-archetype-j2ee-simple (一个简单的J2EE的Java应用程序)

11: internal -> maven-archetype-marmalade-mojo (一个Maven的 插件开发项目 using marmalade)

12: internal -> maven-archetype-mojo (一个Maven的Java插件开发项目)

13: internal -> maven-archetype-portlet (一个简单的portlet应用程序)

14: internal -> maven-archetype-profiles ()

15: internal -> maven-archetype-quickstart ()

16: internal -> maven-archetype-site-simple (简单的网站生成项目)

17: internal -> maven-archetype-site (更复杂的网站项目)

18: internal -> maven-archetype-webapp (一个简单的Java Web应用程序)

19: internal -> jini-service-archetype (Archetype for Jini service project creation)

20: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype)

21: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (无残留) 原型)

22: internal -> softeu-archetype-jsf (JSF+Facelets 原型)

23: internal -> jpa-maven-archetype (JPA 应用程序)

24: internal -> spring-osgi-bundle-archetype (Spring-OSGi 原型)

25: internal -> confluence-plugin-archetype (Atlassian 聚合插件原型)

26: internal -> jira-plugin-archetype (Atlassian JIRA 插件原型)

27: internal -> maven-archetype-har (Hibernate 存档)

28: internal -> maven-archetype-sar (JBoss 服务存档)

29: internal -> wicket-archetype-quickstart (一个简单的Apache Wicket的项目)

30: internal -> scala-archetype-simple (一个简单的scala的项目)

31: internal -> lift-archetype-blank (一个 blank/empty liftweb 项目)

32: internal -> lift-archetype-basic (基本(liftweb)项目)

33: internal -> cocoon-22-archetype-block-plain ([http://cocoapacorg2/maven-plugins/\])

34: internal -> cocoon-22-archetype-block ([http://cocoapacorg2/maven-plugins/\])

35: internal -> cocoon-22-archetype-webapp ([http://cocoapacorg2/maven-plugins/\])

36: internal -> myfaces-archetype-helloworld (使用MyFaces的一个简单的原型)

37: internal -> myfaces-archetype-helloworld-facelets (一个使用MyFaces和Facelets的简单原型)

38: internal -> myfaces-archetype-trinidad (一个使用MyFaces和Trinidad的简单原型)

39: internal -> myfaces-archetype-jsfcomponents (一种使用MyFaces创建定制JSF组件的简单的原型)

40: internal -> gmaven-archetype-basic (Groovy的基本原型)

41: internal -> gmaven-archetype-mojo (Groovy mojo 原型)

原文链接:Maven 的41种骨架功能介绍 - _zao123 - 博客园

相关推荐
并不会2 小时前
常见 CSS 选择器用法
前端·css·学习·html·前端开发·css选择器
龙鸣丿2 小时前
Linux基础学习笔记
linux·笔记·学习
Nu11PointerException4 小时前
JAVA笔记 | ResponseBodyEmitter等异步流式接口快速学习
笔记·学习
@小博的博客7 小时前
C++初阶学习第十弹——深入讲解vector的迭代器失效
数据结构·c++·学习
南宫生8 小时前
贪心算法习题其四【力扣】【算法学习day.21】
学习·算法·leetcode·链表·贪心算法
懒惰才能让科技进步9 小时前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)
人工智能·深度学习·学习·算法·chatgpt·transformer·剪枝
love_and_hope9 小时前
Pytorch学习--神经网络--搭建小实战(手撕CIFAR 10 model structure)和 Sequential 的使用
人工智能·pytorch·python·深度学习·学习
Chef_Chen9 小时前
从0开始学习机器学习--Day14--如何优化神经网络的代价函数
神经网络·学习·机器学习
芊寻(嵌入式)9 小时前
C转C++学习笔记--基础知识摘录总结
开发语言·c++·笔记·学习
小灰灰__10 小时前
IDEA加载通义灵码插件及使用指南
java·ide·intellij-idea