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

目录

前言

1.在IDEA中配置Maven

          2.创建Maven项目

(1)Maven:创建普通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 - 博客园

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/378124.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙特色物联网实训室

一、 引言 在当今这个万物皆可连网的时代,物联网(IoT)正以前所未有的速度改变着我们的生活和工作方式。它如同一座桥梁,将实体世界与虚拟空间紧密相连,让数据成为驱动决策和创新的关键力量。随着物联网技术的不断成熟…

关于 Docker Registry (镜像仓库)

什么是镜像仓库 概念 镜像仓库(Docker Registry)负责存储、管理和分发镜像,并提供了登录认证能力,建立了仓库的索引。 镜像仓库管理多个 Repository,Repository 通过命名来区分。每个 Repository 包含一个或多个镜像…

WAF基础介绍

WAF 一、WAF是什么?WAF能够做什么 二 waf的部署三、WAF的工作原理 一、WAF是什么? WAF的全称是(Web Application Firewall)即Web应用防火墙,简称WAF。 国际上公认的一种说法是:Web应用防火墙是通过执行一…

[Labview] 表格单元格外边框 二维图片叠加绘图

最终效果如下所示 转行做Labview都没到三个月,主程居然让我做这么复杂的功能,真是看得起我/(ㄒoㄒ)/~~ 思路大致分为两步 1、确定每个框体的左上/右下单元格位置,转换为表格表格坐标并在二维图片上绘制生成; 2、为二维图片添加…

cuda缓存示意图

一、定义 cuda 缓存示意图gpu 架构示意图gpu 内存访问示意图 二、实现 cuda 缓存示意图 DRAM: 通常指的是GPU的显存,位于GPU芯片外部,通过某种接口(如PCIE)与GPU芯片相连。它是GPU访问的主要数据存储区域,用于存储大…

MBR40150FCT-ASEMI无人机专用MBR40150FCT

编辑:ll MBR40150FCT-ASEMI无人机专用MBR40150FCT 型号:MBR40150FCT 品牌:ASEMI 封装:TO-220F 批号:最新 最大平均正向电流(IF):40A 最大循环峰值反向电压(VRRM&a…

shell的变量及赋值

文章目录 一,shell变量是什么二,自定义变量1 . 查看和引用变量的值2 . echo选项3 . unset4 . 特殊符号5 . 括号 三,交互式定义变量1 . read2 . read 选项 四,变量的范围1 . export命令 五,数值变量的运算及特殊变量1 .…

鸿蒙Harmony--文本组件Text属性详解

金樽清酒斗十千,玉盘珍羞直万钱。 停杯投箸不能食,拔剑四顾心茫然。 欲渡黄河冰塞川,将登太行雪满山。 闲来垂钓碧溪上,忽复乘舟梦日边。 行路难,行路难,多歧路,今安在? 长风破浪会有…

浅析stm32启动文件

浅析stm32启动文件 文章目录 浅析stm32启动文件1.什么是启动文件?2.启动文件的命名规则3.stm32芯片的命名规则 1.什么是启动文件? 我们来看gpt给出的答案: STM32的启动文件是一个关键的汇编语言源文件,它负责在微控制器上电或复位…

探索数据结构与算法的奇妙世界 —— Github开源项目推荐《Hello 算法》

在浩瀚的编程与计算机科学领域中,数据结构与算法无疑是每位开发者攀登技术高峰的必经之路。然而,对于初学者而言,这条路往往布满了荆棘与挑战。幸运的是,今天我要向大家推荐一个令人振奋的项目——《Hello Algo》,它正…

在 Vue3 + Electron 中使用预加载脚本(preload)

文章目录 一、什么是预加载脚本(preload),为什么我们需要它二、通过预加载脚本暴露相关 API 至渲染进程1、实现获取系统默认桌面路径功能2、向剪切板写入内容3、使用系统默认浏览器访问目标 url4、使用文件选择对话框 三、参考资料 一、什么是预加载脚本(preload)&a…

负载测试和功率分析中负载箱的重要作用

在负载测试和功率分析中,负载箱扮演着至关重要的角色。以下是负载箱在这两个方面的重要作用: 一、负载测试中的重要作用 模拟实际负载条件: 负载箱能够模拟各种复杂的负载条件,包括电阻性负载、电感性负载、电容性负载等&#x…

【HarmonyOS开发】弹窗交互(promptAction )

实现效果 点击按钮实现不同方式的弹窗showToast showDialog showActionMenu 代码实现 1.引入’ohos.promptAction’ import promptAction from ohos.promptAction;2.通过promptAction 实现系统既定的弹窗 import promptAction from ohos.promptAction;Entry Component st…

Spring-Spring、IoC、DI、注解开发

1、Spring是什么 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。 Spring整体架构 Spring优点: Spring属于低侵入设计。IOC将对象之间的依赖关系交给Spring,降低组件之间的耦合,实现各个层之间的解耦,让我们更专注于业务…

数据库内核研发学习之路(三)创建postgres内置函数

本章之前已经讲明白了我们的postgres如何进行编译安装,这是很重要的一步,接下来就是学会对postgres进行小的改动,然后保证依然能够顺利编译安装运行! 本章续讲内容如何创建一个内置函数。 1、内置函数和用户自定义函数的区别 熟…

如何在所有docker命令前加上一个sudo

如果当前登录用户不是root不用,使用docker命令的时候,需要在前面加上一个sudo 提升权限。 但是每次都加,就感觉特别的麻烦,如何简化呢? 解决办法 打开你的shell配置文件(例如,如果你使用bash&am…

多媒体软件开发选择Animate软件还是Unity3D软件?

以下内容可能有一些片面,因为多媒体软件开发平台有很多,因为接触Animate和Unity3D比较多,所以这里仅对这两款进行分析! Animate软件与Unity3D软件都是经常在多媒体展馆中用来制作互动展示内容的,对于这两种开发平台&a…

Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截

摘要 在当今互联网时代,数据采集已成为获取信息的重要手段。然而,随着反爬虫技术的不断进步,爬虫开发者面临着越来越多的挑战。本文将探讨Java爬虫在抓取TikTok音频时的安全策略,包括如何防止请求被拦截,以及如何提高…

园区道路车辆智能管控视频解决方案,打造安全畅通的园区交通环境

一、背景需求分析 随着企业园区的快速发展和扩张,道路车辆管理成为了保障园区秩序、提升运营效率及确保员工安全的重要任务。针对这一需求,旭帆科技TSINGSEE青犀提出了一种企业园区道路车辆管控的解决方案,通过整合视频监控、智能识别等技术…

LVS+Nginx高可用集群---搭建高可用集群负载均衡

1.LVS简介 Lvs(Linux Virtual Server):使用集群,对于整个用户来说是透明,用户访问的时候是单个高性能的整体。道理与nginx类似 LVS网络拓扑图:是基于四层。 用户通过浏览器发送请求,然后到达LVS.Lvs根据相应算法将…