在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的配置与使用的更多相关文章

  1. 浅谈基于Prism的软件系统的架构设计

    很早就想写这么一篇文章来对近几年使用Prism框架来设计软件来做一次深入的分析了,但直到最近才开始整理,说到软件系统的设计这里面有太多的学问,只有经过大量的探索才能够设计出好的软件产品,就本人的理解, ...

  2. 浅谈基于Linux的Redis环境搭建

    本篇文章主要讲解基于Linux环境的Redis服务搭建,Redis服务配置.客户端访问和防火强配置等技术,适合具有一定Linux基础和Redis基础的读者阅读. 一  Redis服务搭建 1.在根路径 ...

  3. 浅谈基于WOPI协议实现跨浏览器的Office在线编辑解决方案

    如今,基于Web版的Office 在线预览与编辑功能已成为一种趋势,而关于该技术的实现却成为了国内大部份公司的技术挑战,挑战主要存在于两方面: 其一:目前国内乃至微软本身,还没有相对较为完善的解决方案 ...

  4. 浅谈基于FormsAuthentication的认证

    一般情况下,在我们做访问权限管理的时候,会把用户的正确登录后的基本信息保存在Session中,以后用户每次请求页面或接口数据的时候,拿到 Session中存储的用户基本信息,查看比较他有没有登录和能否 ...

  5. 软件安全测试新武器 ——浅谈基于Dynamic Taint Propagation的测试技术

    软件安全测试是保证软件能够安全使用的最主要的手段,如何进行高效的安全测试成为业界关注的话题.多年的安全测试经验告诉我们,做好软件安全测试的必要条件是:一是充分了解软件安全漏洞,二是拥有高效的软件安全测 ...

  6. 【ASP.NET MVC系列】浅谈NuGet在VS中的运用

    一     概述 在我们讲解NuGet前,我们先来看看一个例子. 1.例子: 假设现在开发一套系统,其中前端框架我们选择Bootstrap,由于选择Bootstrap作为前端框架,因此,在项目中,我们 ...

  7. 【ASP.NET MVC系列】浅谈ASP.NET 页面之间传值的几种方式

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  8. 【ASP.NET MVC系列】浅谈ASP.NET MVC运行过程

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  9. 【ASP.NET MVC系列】浅谈ASP.NET MVC 路由

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

随机推荐

  1. BZOJ_4590_[Shoi2015]自动刷题机_二分答案

    BZOJ_4590_[Shoi2015]自动刷题机_二分答案 Description 曾经发明了信号增幅仪的发明家SHTSC又公开了他的新发明:自动刷题机--一种可以自动AC题目的神秘装置.自动 刷题 ...

  2. BZOJ_2435_[Noi2011]道路修建_dfs

    BZOJ_2435_[Noi2011]道路修建_dfs 题意: http://www.lydsy.com/JudgeOnline/problem.php?id=2435 分析: dfs搞定. 我怕爆栈 ...

  3. Python+Appium 获取 toast 文本值方法的封装

    获取toast内容方法封装如下: def get_Toast(self,message): #查找toast值 ''' method explain:查找toast的值,与find_Toast实现方法 ...

  4. PostCSS 基本用法

    1.postcss相关网站 https://www.postcss.com.cn/ https://www.ibm.com/developerworks/cn/web/1604-postcss-css ...

  5. Vue 进阶之路(四)

    之前的文章我们已经对 vue 有了初步认识,这篇文章我们通过一个例子说一下 vue 的样式绑定. 现在我们想要是想这样一个需求,页面上有个单词,当我们点击它的时候颜色变为红色,再点击一次变为原来的颜色 ...

  6. Vue.js-09:第九章 - 组件基础再探(data、props)

    一.前言 在上一章的学习中,我们学习了 Vue 中组件的基础知识,知道了什么是组件,以及如何创建一个全局/局部组件.不知道你是否记得,在上一章中,我们提到组件是一个可以复用的 Vue 实例,它与 Vu ...

  7. synchronized关键字简介 多线程中篇(十一)

    前面说过,Java对象都有与之关联的一个内部锁和监视器 内部锁是一种排它锁,能够保障原子性.可见性.有序性 从Java语言层面上说,内部锁使用synchronized关键字实现 synchronize ...

  8. DS控件库 Win7链接列表框的仿Windows开始菜单样式

    Win7链接列表框是依照Windows7的开始菜单开发的,同时进行了属性和功能的扩展. 效果图 项属性 控件属性 控件主要事件 点击项(Sender As Win7链接列表框, Itm As 链接项, ...

  9. 浅谈java线程池实现

    再进入主题之前,我们先了解几个概念,对读源码有所帮助,对于线程池的运行状态,有4个级别,分别是RUNNING,SHUTING,STOP,TIDING,TERMINATED 解释如下: The runS ...

  10. Vue.js 学习笔记 第1章 初识Vue.js

    本篇目录: 1.1 Vue.js 是什么 1.2 如何使用Vue.js 本章主要介绍与Vue.js有关的一些概念与技术,并帮助你了解它们背后相关的工作原理. 通过对本章的学习,即使从未接触过Vue.j ...