浅谈基于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浏览器(操作 ...
随机推荐
- 【游戏开发】小白学Lua——从Lua查找表元素的过程看元表、元方法
引言 在上篇博客中,我们简单地学习了一下Lua的基本语法.其实在Lua中有一个还有一个叫元表的概念,不得不着重地探讨一下.元表在实际地开发中,也是会被极大程度地所使用到.本篇博客,就让我们从Lua查找 ...
- Windows上安装配置SSH教程(1)——知识点汇总
1.是什么SSH? 维基百科:https://zh.wikipedia.org/wiki/Secure_Shell 其他博客:http://www.ruanyifeng.com/blog/2011/1 ...
- 第十四章——循环神经网络(Recurrent Neural Networks)(第二部分)
本章共两部分,这是第二部分: 第十四章--循环神经网络(Recurrent Neural Networks)(第一部分) 第十四章--循环神经网络(Recurrent Neural Networks) ...
- Python GIL(Global Interpreter Lock)
一,介绍 定义: In CPython, the global interpreter lock, or GIL, is a mutex that prevents multiple native t ...
- Go语言中的面向对象
前言 如果说最纯粹的面向对象语言,我觉得是Java无疑.而且Java语言的面向对象也是很直观,很容易理解的.class是基础,其他都是要写在class里的. 最近学习了Go语言,有了一些对比和思考.虽 ...
- ASP.NET Core实现 随处可见的基本身份认证
概览 在HTTP中,基本认证(Basic access authentication,简称BA认证)是一种用来允许网页浏览器或其他客户端程序在请求资源时提供用户名和口令形式的身份凭证的一种登录验证方式 ...
- 简单导出下载excel的方法
简单导出excel方法 /// <summary> /// Excel打包下载 /// </summary> /// <returns></returns&g ...
- 浅谈java线程池实现
再进入主题之前,我们先了解几个概念,对读源码有所帮助,对于线程池的运行状态,有4个级别,分别是RUNNING,SHUTING,STOP,TIDING,TERMINATED 解释如下: The runS ...
- rsync命令详解、rsync用ssh隧道方式同步
● rsync格式安装命令 yum install -y rsync与scp的区别:scp复制为完全覆盖,rsync为增量同步,只同步修改过的数据.rsync命令格式如下: rsync 选项 源文件 ...
- 【swoole】使用swoole简单实现TCP服务
上一篇写到了如何在windows系统上面利用docker快速搭建swoole开发环境,接下来体验下swoole的使用 使用swoole实现tcp服务 <?php $serv = new Swoo ...