maven 镜像_Maven(一)

1. 掌握M2Elipse插件安装及Maven仓库的配置

2. 掌握Maven工程目录结构和创建工程

3. 掌握Maven工程的关系

4. 掌握Maven常见的插件

5. 掌握Maven命令

壹、什么是 Maven

a0fc0acb08cdbc6533756cd0d3df2943.png

在Maven中,可以理解为所有的项目都是一个个的对象。

贰、Maven 和 ANT 的区别

d55223b00ccb085e7b6c71f90251ad24.png

79a522b0c8f304aa4c8225f55a4d711d.png

叁、 Maven 的下载与 IDE 的整合

window->Preferences->Maven->Installations,将下载好的的Maven工具添加。

添加后将其勾选,确定。

3c52d525e1c23d2dab758a0bad27c419.png

指定Maven的配置文件。也可以将原setting.xml文件复制一份放入到其他文件夹中进行指定,并自定义配置本地仓库

bba041a6af0fe473e173dc8a7dda9080.png

二、Maven 仓库与配置

Maven 仓库是基于简单文件系统存储的,集中化管理 Java API 资源(构件)的一个服
务。仓库中的任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存
储路径。得益于 Maven 的坐标机制,任何 Maven 项目使用任何一个构件的方式都是完全
相同的,Maven 可以在某个位置统一存储所有的 Maven 项目共享的构件,这个统一的位
置就是仓库,项目构建完毕后生成的构件也可以安装或者部署到仓库中,供其它项目使用。

1、远程仓库:

远程仓库指通过各种协议如 file://和 http://访问的其它类型的仓库。这些仓库可能是第
三方搭建的真实的远程仓库,用来提供他们的构件下载(例如 repo.maven.apache.org 和
uk.maven.org 是 Maven 的中央仓库)。其它“远程”仓库可能是你的公司拥有的建立在文件
或 HTTP 服务器上的内部仓库,用来在开发团队间共享私有构件和管理发布的。

2、本地仓库:

本地仓库指本机的一份拷贝,用来缓存远程下载,包含你尚未发布的临时构件。

3、本地仓库配置

本地仓库是开发者本地电脑中的一个目录,用于缓存从远程仓库下载的构件。

在settings文件中进行配置

<localRepository>D:/java-libs

4、镜像仓库配置

如果仓库 A 可以提供仓库 B 存储的所有内容,那么就可以认为 A 是 B 的一个镜像。例 如:在国内直接连接中央仓库下载依赖,由于一些特殊原因下载速度非常慢。这时,我们可 以使用阿里云提供的镜像 http://maven.aliyun.com/nexus/content/groups/public/来替换中央仓 库 http://repol.maven.org/maven2/。

在settings文件中进行配置

<mirror>

5a7fc59308c6f88efac786fc2ee168a3.png

仓库优先级

本地仓库,镜像仓库,中央仓库。

镜像仓库=中央仓库。 镜像仓库是用于替代中央仓库的。

仓库访问优先级:

本地仓库 第一访问本地仓库。 
指定仓库 如果本地仓库不存在对应信息,访问配置文件中指定的远程仓库。 这个远程仓库是第二优先级。 远程仓库 镜像仓库 镜像仓库是 Maven 开发过程中的首选远程仓库,在本地仓库和指定仓库无法获取资源
的时候,直接访问镜像仓库。 中央仓库 如果镜像仓库不是中央仓库 ,则会在访问镜像仓库无法获取资源后,访问中央仓库。

访问流程

Maven在根据坐标查找jar包的时候,首先访问的是本地仓库,如果在本地仓库中没有包含坐标jar包,
那么访问指定仓库。
在本地仓库和指定仓库无法获取资源的时候,访问镜像仓库,如果镜像仓库不是中央仓库,
那么在访问镜像仓库无法获取资源后,访问中央仓库。

伍、Maven工程

1、Maven 的工程类型 1.1、POM 工程 POM 工程是逻辑工程。用在父级工程或聚合工程中。用来做 jar 包的版本控制。 1.2、 JAR 工程 将会打包成 jar 用作 jar 包使用。即常见的本地工程 - Java Project。 1.3 、WAR 工程 将会打包成 war,发布在服务器上的工程。如网站或服务。
即常见的网络工程 - Dynamic Web Project。war 工程默认没有 WEB-INF 目录及 web.xml 配置文件,IDE 通常会显示工程错误,
提供完整工程结构可以解决。

一、maven工程的创建

New--> other -->Maven Project

722b8960ddb97fd4802a41f839e02d95.png

19c4e17cac868580f068c46d0e353ae7.png

b2a25ff70f483f89449fc263faa54747.png
填写项目信息
1 Group Id 公司域名倒写
2 Artifact Id 项目名
3 Version 版本名
4 Packaging 项目类型4.1 Jar java 项目4.2 War : web 项目4.3 POM: 父项目.如果项目有子项目,项目必须是 pom
5 Name : 自定义名称,内容任意
6 Description: 描述.详细描述.
7 Parent Project: 如果当前项目有父项目时填写 

二、Maven工程结构

src/main/java 这个目录下储存 java 源代码 src/main/resources 储存主要的资源文件。比如spring的xml配置文件和log4j的properties 文件。 src/test/java 储存测试用的类,比如 JUNIT 的测试一般就放在这个目录下面 src/test/resources 储存测试用的资源文件 src 包含了项目所有的源代码和资源文件,以及其他项目相关的文件。 target 编译后内容放置的文件夹 pom.xml 是 Maven 的基础配置文件。配置项目和项目之间关系,包括配置依赖关系等等

1edd488da59d334c1f73f967de58a4ea.png

配置Pom.xml文件

ba210675838ee06be9abf7ae3e18876e.png

三、Maven工程关系

1、依赖关系,创建jar类型工程

<dependencies>     

A项目打包

选中项目,Run As--->Maven install,当控制台出现BUILD SUCCESS时就代表打包成功。可以从target中看到。

06fb0ddc36ea23e83c1fb89a9772b770.png

在B项目中引入A项目。

fd9ceda247e7bc84bdc37d68e5dd6c19.png

2、继承

概念:
如果 A 工程继承 B 工程,则代表 A 工程默认依赖 B 工程依赖的所有资源,且可以应用 B 工程中定义的所有资源信息。
被继承的工程(B 工程)只能是 POM 工程。
父工程:对项目资源做统一管理。
子工程:继承父工程,从父工程中的坐标中选择使用哪些来开发项目。pom类型工程结构与jar工程结构不同

File - New -Maven Project,选择创建pom类型的工程,之后修改pom.xml文件。

340417a4b25950538592997f92beef5d.png
properties,该标签下可以定义任何子标签,标签名字可以任意填写。dependencyManagement,当前只是定义坐标不会将该坐标导入项目中

pom.xml配置

<project 

统一版本管理

在pom工程pom.xml中配置

<junit-version>4.2

在jar工程中配置

<parent>

3、聚合

当我们开发的工程拥有 2 个以上模块的时候,每个模块都是一个独立的功能集合。比如 某大学系统中拥有搜索平台,学习平台,考试平台等。开发的时候每个平台都可以独立编译, 测试,运行。这个时候我们就需要一个聚合工程。 在创建聚合工程的过程中,总的工程必须是一个 POM 工程(Maven Project),各子模 块可以是任意类型模块(Maven Module)。所有聚合工程和聚合模块必须处于同一个组 (groupId)中,且聚合工程可以嵌套。

24036fb6d1320fe65be1bc1f5b08465c.png
可以配置多个module标签

f8f545e920f0061233f4f38435bb5fee.png

Maven 中的常见插件配置

1.编译器插件

pom.xml文件配置(局部对当前项目有效)

<build>

settings.xml 文件中配置全局编译器插件

<profile>

2.Tomcat 管理插件

本地应用

运行命令(tomcat7:run)

<build>

远程热部署

运行命令(第一次 tomcat7:depoly 第二次 tomcat7:redepoly )

远程热部署是指,在 Tomcat 容器运行过程中,动态实现 war 工程的部署,重新部署功能。

cadafd6595bacad4bb35e68bb2b357d4.png

方式三:在linux系统中tomcat目录下conf目录下tomcat-users.xml文件中配置

<role 

在pom.xml中配置

<build>

方式四:只用文件上传工具把war包直接上传到linux中tomcat目录下wapps下root中

Maven 常用命令

install 本地安装, 包含编译,打包,安装到本地仓库 编译 - javac 打包 - jar, 将 java 代码打包
为 jar 文件 安装到本地仓库 - 将打包的 jar 文件,保存到本地仓库目录中。 
clean 清除已编译信息。 删除工程中的 target 目录。 
compile 只编译。 javac 命令 
deploy 部署。 常见于结合私服使用的命令。 相当于是 install+上传 jar 到私服。 包含编译,打包,
安装到本地仓库,上传到私服仓库。
package 打包。 包含编译,打包两个功能。

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

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

相关文章

文本编辑器查看 cprintf颜色_实战PyQt5: 028-纯文本编辑控件QPlainTextEdit

QPlainTextEdit简介QPlainTextEdit小部件是一个用于编辑和显示纯文本控件&#xff0c;QPlainTextEdit控件与QTextEdit控件使用了相同的技术和概念&#xff0c;但是它为纯文本处理提供了优化。QPlainTextEdit是一个支持纯文本的高级查看器/编辑器&#xff0c;可以处理大型文档并…

使用通用mapper实现条件查询_【微服务】152:Stream流和通用mapper批量查询的使用...

今天是刘小爱自学Java的第152天。感谢你的观看&#xff0c;谢谢你。学习计划安排如下&#xff1a;补充完昨天商品查询中关于分类和品牌的部分&#xff0c;其中牵扯到了两个非常重要的知识点&#xff1a;Stream流的使用&#xff0c;这个学过后基本就没怎么使用过&#xff0c;这次…

java递归实现多级菜单栏_vue+ java 实现多级菜单递归效果

效果如图&#xff1a;大概思路&#xff1a;树形视图使用的是vue官方事例代码&#xff0c;java负责封装数据&#xff0c;按照vue官方事例的数据结构封装数据即可。有两个需要关注的点&#xff1a;1.官方事例的数据结构是一个对象里面包含着集合&#xff0c;而不是一个集合对象 2…

mfc打开一个.txt文件并进行处理_文件处理方法Python

你好&#xff0c;我是goldsunC让我们一起进步吧&#xff01;1. 文件说明文件是存储在存储器上的数据序列&#xff0c;在计算机中&#xff0c;所有文件都是以二进制的方式进行存储的&#xff0c;而文件的展示形式一般分为两种&#xff1a;文本形式和二进制形式。文本文件由单一特…

qt的如何调整显示不为科学记数法_Excel操作技巧:如何将信息快速准确的录入Excel?...

前面几篇文章中&#xff0c;给大家介绍了一些excel的基本操作技巧&#xff0c;以及如何高效地浏览表格。相信大家多少都会获得一点收获&#xff0c;希望能够为大家提供一些工作上的帮助。工作中&#xff0c;老板经常会安排我们手动输入一些数据&#xff0c;考虑到我们要不停的手…

如何给mysql表添加百万条数据_给mysql一百万条数据的表添加索引

直接alter table add index 添加索引&#xff0c;执行一个小时没反应&#xff0c;并且会导致锁表&#xff1b;故放弃该办法&#xff0c;最终解决办法如下&#xff1a;一.打开mysql 命令行客户端这里我们那可以看到导出的数据文件所存放的默认位置 C:\ProgramData\MySQL\MySQL …

qchart画完以后删除_冬天的夜晚很难画?老师分步骤教你画,简单易学,收藏起来临摹...

今日绘画主题&#xff1a;冬天的夜晚冬天是美好的&#xff0c;也是很多画家喜欢创作的题材之一&#xff0c;但是&#xff0c;冬天的夜晚却是很难画&#xff0c;今天分步骤图解教大家画冬天的夜晚&#xff0c;快收藏起来临摹吧。>>>【第一步】&#xff1a;先来画线稿&a…

lrtemplate如何导入pr_PR模板使用套路讲解 视频剪辑教程

​pr模板在使用的时候需要注意的事项以及如何正确操作https://www.zhihu.com/video/1237765482302226432pr模板在使用的时候需要【注意的事项】1、下载的模板必须解压后使用2、下载模板的时候网站上页面都会有介绍模版所支持的版本3、弹出不同版本的提示窗口&#xff0c;点击确…

linux没有usr目录_了解linux系统目录,sys,tmp,usr,var!

linux小白到大神的成长之路&#xff1a;了解linux系统目录&#xff0c;sys,tmp,usr,var&#xff01;本经验由宗龙龙原创,全文共600多字&#xff0c;阅读需要14分钟&#xff0c;如果文中存在错误&#xff0c;还请大家多多指点&#xff0c;我会积极改进的&#xff01;​这篇文章将…

svd奇异值分解_奇异值分解SVD

点击上方蓝字关注我们奇异值分解(SVD)在计算机视觉中有着广泛的应用&#xff0c;如数据降维、推荐系统、自然语言处理等。本文是介绍SVD的数学计算过程&#xff0c;并从SVD的性质说明其应用的原理。01特征值与特征向量奇异值分解(SVD)与特征分解类似&#xff0c;是将矩阵分解为…

python turtle画房子详细解释_[宜配屋]听图阁

我就废话不多说了&#xff0c;直接上代码吧&#xff01;import turtletturtle.Turtle()turtle.Turtle().screen.delay(0)tleftturtle.Turtle()#第一部分t.penup()t.goto(0,0)t.pendown()t.left(20)t.forward(110)t.left(25)t.forward(40)t.left(100)t.circle(180,20)t.right(12…

简易航空订票系统_四川航空APP全新升级改版,三大亮点提升订票体验

成都2015年10月23日电 /美通社/ -- 四川航空发布手机APP全新的3.0版本&#xff0c;不仅针对界面风格做了全新改变&#xff0c;在iOS9、安卓系统上的展示更加炫丽&#xff1b;而且在机票预订、航班动态、特价机票方面均做了大幅升级&#xff0c;会员服务也更加贴心。对于有机票需…

python可视化分析网易云音乐评论_网易云音乐热门评论api分析

网上有现成的例子我就扒过来了&#xff01;&#xff01;title: 网易云评论api分析date: 2018-12-24 20:54:46tags: [python]网易云音乐是个好地方&#xff0c;里面各个都是人才&#xff0c;特别是评论区……所以我就想把评论爬下来看看&#xff0c;下面记录一下分析api的过程与…

spring 上下文_一次性教你彻底理解 Spring容器和应用上下文!

作者&#xff1a;陈本布衣www.cnblogs.com/chenbenbuyi有了Spring之后&#xff0c;通过依赖注入的方式&#xff0c;我们的业务代码不用自己管理关联对象的生命周期。业务代码只需要按照业务本身的流程&#xff0c;走啊走啊&#xff0c;走到哪里&#xff0c;需要另外的对象来协助…

oracle plsql 到处dbf_plsql 导出oracle数据库

plsql 导出数据库有两个问题&#xff0c;一个是只导出结构&#xff0c;一个是导出表结构加数据这样的&#xff0c;首先人家让我导成sql语句这不是简单&#xff0c;首先打开PLSQL一、导出结构1、然后tools->Export User Objects..然后出来一片空白2、要选择哪个User3、上面会…

python爬取百度百科搜索结果_用Python抓取百度搜索结果,python,爬取,的

前言前几天爬的今天整理了一下发现就两个需要注意的点一是记得用带cookie的方式去访问&#xff0c;也就是实例化requests.session()二是转化一下爬取到的url&#xff0c;访问爬到的url得到返回的Location值&#xff0c;该值便是真实的地址(如果你不是要爬url当我没说)知道了这两…

spring aop设计模式_Spring框架中设计模式的运用

设计模式大家可能随口就能说出总共有23种&#xff0c;但是具体怎么用&#xff0c;或者在常用的组建中有哪些体现&#xff0c;这时候不一定说的上来了。接下来几篇文章&#xff0c;我们一起深入理解。首先我们一起了解下常用的组建中是怎么运用的&#xff0c;比如 JDK、Sring、M…

sql unicode转中文_SELECT语句《SQL必知必会》

数据库中有哪些数据类型&#xff1f;数据库中最常用对数据类型有三种&#xff1a;Text&#xff08;文本&#xff09;、Number&#xff08;数字&#xff09;和 Date/Time。文本类型&#xff1a;即字符串&#xff0c;如“nameasdas”数字类型&#xff1a;十进制数字&#xff0c;如…

graphpad如何检测方差齐_如何选择方差分析的多重比较方法?资料集锦

欢迎订阅SPSS训练营号方差分析时&#xff0c;如果因素主效应有显著影响&#xff0c;则需要对因素水平进行两两比较&#xff0c;以确认因素水平间的具体差异。这个过程也叫作多重比较。SPSS提供14种用于方差齐次的多重比较方法&#xff0c;还有4种方差不齐情况下的多重比较方法&…

【MySQL学习笔记009】事务

一、事务简介 事务是一组操作的集合&#xff0c;它是一个不可分割的工作单位&#xff0c;事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求&#xff0c;即这些操作要么同时成功&#xff0c;要么同时失败。 二、事务操作 1、操作1 查看/设置事务提交方式 select a…