浅谈基于Intellij IDEA Maven的配置与使用
在java开发中,引入jar包的方式从种类上划分,可分为自动导入和手动导入,然而,手动导入繁琐,不是很适合当前开发模式,手动导入也被自动导入所取代。
当前,Maven和Gradle是比较主流的自动导入工具,本篇文章,我们主要分析Maven自动导入。
在进入正文前,我们先来看看一个概念,即“仓库”。何为仓库呢?指存放jar文件的库,具体来说,就是项目所需的jar文件库。在公司开发中,仓库一般分文中央
仓库和本地仓库,本地仓库作为开发本地用,中央仓库为公司所用,使用它们的逻辑是这样的:
(1)先查本地仓库是否有相关的jar包,若有,则直接获取;
(2)若本地仓库没有相关的jar包,则本地仓库从中央仓库获取到本地,然后项目再从本地仓库获取
一 Maven配置
在配置Maven时,请先安装JDK7及以上版本,检查jdk版本:java -version,我电脑安装的时jdk 11
1.下载解压版本。
官网: https://maven.apache.org/download.cgi
2.将下载的Maven解压到指定位置,这里,我解压到C:\Maven
3.配置环境变量
(1)Maven_HOME:C:\Maven\apache-maven-3.6.0
(2)将Maven_HOME变量添加到PATH
%Maven_HOME%\bin
4.建立本地仓库,我的本地仓库为E:\MyRepos
5.修改Maven的settings(C:\Maven\apache-maven-3.6.0\conf\settings.xml)文件,添加本地仓库路径
6.测试Maven是否配置成功。
在dos中输入:mvn help:system ,E:\MyRepos会自动产生一些文件,说明配置成功
E:\MyRepos 增加了如下文件
提示:在测试完安装成功后,将E:\MyRepos 测试时生成的所有文件清空
二 在Intellij IDEA中配置Maven
1.启动Intellij IDEA,Create new Project=>Maven=>Project SDK=>勾选"Create from archetype",
这里我选择WepApp作为测试
2.设置项目相关信息
GroupId:可以当作项目的命名空间,一般为公司域名倒写
ArtifactId:项目名称
Version:版本,默认即可
3.选择Maven包和本地仓库
4.一直Next直到项目构建完成,如下为默认构造的WebApp项目
5.关于Maven在Intellij IDEA详细配置
File=>Settings=>Build,Execution,Deploymen=>Build Tools=>Maven=>Importins
进行相关配置即可
三 配置Tomcat
1.Add Configuration=>Templates=>Tomcat Server=>Local
2.配置Server
在Application server选择配置好的Tomcat即可,我的是Tomcat 9.0.14
3.配置代理
Deployment=>+=>Artifact=>MavenTest:war,将Application context名字修改与项目名相同,因为本项目
名为MavenTest,所以更改为MavenTest
4.浏览器输入:http://localhost:8080/MavenTest/ ,出现如下,说明部署成功
四 在Tomcat中部署war
1.将MavenTest.war拷贝到Tomcat的webapps目录下即可,我的为:
C:\Program Files\Apache Software Foundation\Tomcat 9.0\MavenTest.war
2.启动Tomcat,就可以访问了
五 版权区
- 转载博客,必须注明博客出处
- 博主网址:http://www.cnblogs.com/wangjiming/
- 如您有新想法,欢迎提出,邮箱:2098469527@qq.com
- 专业.NET之家技术QQ群:490539956
- 专业化Java之家QQ群:924412846
- 有问必答QQ群:2098469527
- 一对一技术辅导QQ:2098469527
浅谈基于Intellij IDEA Maven的配置与使用的更多相关文章
- 浅谈基于Prism的软件系统的架构设计
很早就想写这么一篇文章来对近几年使用Prism框架来设计软件来做一次深入的分析了,但直到最近才开始整理,说到软件系统的设计这里面有太多的学问,只有经过大量的探索才能够设计出好的软件产品,就本人的理解, ...
- 浅谈基于Linux的Redis环境搭建
本篇文章主要讲解基于Linux环境的Redis服务搭建,Redis服务配置.客户端访问和防火强配置等技术,适合具有一定Linux基础和Redis基础的读者阅读. 一 Redis服务搭建 1.在根路径 ...
- 浅谈基于WOPI协议实现跨浏览器的Office在线编辑解决方案
如今,基于Web版的Office 在线预览与编辑功能已成为一种趋势,而关于该技术的实现却成为了国内大部份公司的技术挑战,挑战主要存在于两方面: 其一:目前国内乃至微软本身,还没有相对较为完善的解决方案 ...
- 浅谈基于FormsAuthentication的认证
一般情况下,在我们做访问权限管理的时候,会把用户的正确登录后的基本信息保存在Session中,以后用户每次请求页面或接口数据的时候,拿到 Session中存储的用户基本信息,查看比较他有没有登录和能否 ...
- 软件安全测试新武器 ——浅谈基于Dynamic Taint Propagation的测试技术
软件安全测试是保证软件能够安全使用的最主要的手段,如何进行高效的安全测试成为业界关注的话题.多年的安全测试经验告诉我们,做好软件安全测试的必要条件是:一是充分了解软件安全漏洞,二是拥有高效的软件安全测 ...
- 【ASP.NET MVC系列】浅谈NuGet在VS中的运用
一 概述 在我们讲解NuGet前,我们先来看看一个例子. 1.例子: 假设现在开发一套系统,其中前端框架我们选择Bootstrap,由于选择Bootstrap作为前端框架,因此,在项目中,我们 ...
- 【ASP.NET MVC系列】浅谈ASP.NET 页面之间传值的几种方式
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- 【ASP.NET MVC系列】浅谈ASP.NET MVC运行过程
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- 【ASP.NET MVC系列】浅谈ASP.NET MVC 路由
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
随机推荐
- [Usaco2005 nov]Grazing on the Run 边跑边吃草 BZOJ1742
分析: 首先,连续选择一段必定最优... 区间DP,f[i][j]表示从i开始,连续j个被吃掉了,并且,牛在i处,g[i][j]则表示在i+j-1处 f[i][j]可以从g[i+1][j]和f[i+1 ...
- java中八大基本数据类型详解
1.基本数据类型的分类 java中的类型分为基本数据类型和引用类型,今天我们讨论的是java中的八大基本数据类型. 基本数据类型可以分为三类:1.数值类型.2.字符类型.3.布尔类型. 数值类型又分为 ...
- Sublime text3所遇到的问题
sublime text3的下载地址:https://www.sublimetext.com/ 解决sublime text上不能使用交互的input的输入问题 通过安装sublimeREPL插件解决 ...
- 为什么会有Comparable与Comparator接口? 引入策略模式
目录 引入 Comparable接口的来龙去脉 引入Comparator接口 什么是策略模式? 使用了策略模式有什么好处? 引入 大家先考虑一个场景, 有一个整形数组, 我们希望通过调用一个工具类的排 ...
- jqgrid postData post方式累加参数,缓存了原来的数据
今天做项目的时候发现一个问题,我们有一个筛选项,一个是VIP用户,一个是普通用户,还有一个是全部用户,首先看下我们的selection <select name="" id= ...
- android消息处理源码分析
一.简介消息处理机制主要涉及到这几个类:1.Looper2.MessageQueue3.Message4.Handler 二.源码分析 Looper.class的关键源码: //保存Looper对象, ...
- SQL SERVER 查看近期死锁
在项目运行的过程中,死锁不可能完全避免,但要尽可能减少死锁的出现, 产生死锁的原因主要是: 1,系统资源不足. 2,进程运行推进的顺序不合适. 3,资源分配不当等. 产生死锁的四个必要条件:- 互斥条 ...
- SQL Server作业报错特殊案例
一个作业报错,报错信息如下,从错误信息根本看不出为什么出错,手工运行作业又成功了.一时不清楚什么原因导致作业出错. Message Executed as user: NT SERVICE\SQLSE ...
- navicate for mysql之-Can't connect to MySQL server on 'localhost'(10038)
1. 卸载navicate for mysql 会留下很多坑,主要是卸载不干净,卸载之后重新安装会出现之前的库内容和库链接还存在的问题,这种情况的出现是卸载残余. 解决办法,清理注册表(网上很多教程但 ...
- 使用 Node.js 搭建 Web 服务器
使用Node.js搭建Web服务器是学习Node.js比较全面的入门教程,因为实现Web服务器需要用到几个比较重要的模块:http模块.文件系统.url解析模块.路径解析模块.以及301重定向技术等, ...