当前位置: 首页 > news >正文

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 - 博客园

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 调用第三方接口-OkHttpClient
  • 什么是寄存器
  • TCP Socket编程示例
  • c++模板初识
  • 【MySQL】根据binlog日志获取回滚sql的一个开发思路
  • 2024.7.19 作业
  • docker 操作
  • PHP宠物店萌宠小程序系统源码
  • 【EI检索】第二届机器视觉、图像处理与影像技术国际会议(MVIPIT 2024)
  • 掌握构建艺术:在Gradle中配置自定义的源代码管理(SCM)
  • web前端 Vue 框架面试120题(四)
  • 我去,怎么http全变https了
  • 【SpringBoot】单元测试之测试Service方法
  • IDEA性能优化方法解决卡顿
  • 目标检测算法
  • Babel配置的不完全指南
  • C++类中的特殊成员函数
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • Git学习与使用心得(1)—— 初始化
  • iOS 系统授权开发
  • JWT究竟是什么呢?
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • Linux中的硬链接与软链接
  • Material Design
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • spring security oauth2 password授权模式
  • Vue组件定义
  • 少走弯路,给Java 1~5 年程序员的建议
  • 什么软件可以剪辑音乐?
  • 实习面试笔记
  • 算法---两个栈实现一个队列
  • 通过git安装npm私有模块
  • HanLP分词命名实体提取详解
  • hi-nginx-1.3.4编译安装
  • 阿里云API、SDK和CLI应用实践方案
  • 函数计算新功能-----支持C#函数
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • #70结构体案例1(导师,学生,成绩)
  • #AngularJS#$sce.trustAsResourceUrl
  • (1)Hilt的基本概念和使用
  • (42)STM32——LCD显示屏实验笔记
  • (八)c52学习之旅-中断实验
  • (附源码)计算机毕业设计ssm电影分享网站
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (转) Face-Resources
  • .gitignore不生效的解决方案
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET Core中Emit的使用
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • .netcore 获取appsettings
  • .NET建议使用的大小写命名原则
  • .net开发日常笔记(持续更新)