A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

同学们,今天我们学习了一个新的概念--Maven,可以把它理解为jar包管理工具,Maven在开发中普遍使用,但使用并不是很难。大家在今天的学习过程中需要掌握的有:

  • 完成Maven环境搭建
  • 能够分清几种仓库的区别
  • 熟练掌握常见命令
  • 能够用Maven完成ssh项目的搭建
  • 了解聚合和继承的区别

请同学们按照如上要求,总结你对Maven的理解



52 个回复

倒序浏览
颜琳琳

maven是项目管理工具,管理java文件
maven配置:
        1)本地仓库的配置
        将maven解压后在maven的安装目录中的conf下的setting.xml中的配置本地仓库的安装路径
        2)环境配置
        MAVEN_HOME:I:\Maven\apache-maven-3.5.4
        M2_HOME: I:\Maven\apache-maven-3.5.4
        PATH: %MAVEN_HOME%\bin
       
       
dependencyManagement 管理依赖,代表谁用谁加载此依赖       
dependencies 添加依赖标签

常见命令:
        clean:清理tager文件夹
        complie:编译源代码
        install:安装到本地仓库
        pakage:打包 编译好的代码为jar或war
       
maven创建ssh工程:
        1.通过创建maven项目创建war工程
        2.添加ssh依赖
        3.ssh工程搭建(1.创建包类ssh框架的配置 2.创建实体类  3.编写每个类的功能)
        4.定义变量(定义变量是在依赖添加中相同的进行提取到一个属性标签,通过el表达式引用这个变量的值,这样做的好处是版本一旦改变,直接修改属性标签的值)
        5.打包war包
创建maven工程时选pom,是以一个pom形式出现,pom代表聚合,底层有多个模块工程组成聚合,有聚合出现继承也一定会出现。
maven的聚合和继承:
        创建maven工程时选pom,是以一个pom形式出现,pom代表聚合,底层有多个模块工程组成聚合,有聚合出现继承也一定会出现。
聚合和继承的区别:
        聚合是多个模块工程聚合在一起,而继承则是某个模块工程要继承另一个模块的功能
回复 使用道具 举报
maven:主要是方便我们去管理jar包的工具。
maven仓库:私服、中央仓库、本地仓库。
maven工程有3种:jar、pom、war。分别对应的是java项目、聚合项目、web项目。
修改项目编译版本:
        1)build path
        2)修改maven-compiler-plugin,并配置为1.7版本
生命周期:
        clean compile install package
pom.xml依赖中相同的version可以抽取出来定义变量
聚合和继承是相辅相成的。通常情况下不会分开使用。
回复 使用道具 举报
施炎生
Maven有两个重点:
1、        创建SSH2工程
Maven工程类型:pom(聚合项目)、jar、war(web模块)
2、        构建多模块的Maven工程

Maven是什么呢?
Maven 是一个项目管理工具,用来管理java项目。用maven构建项目,文件大小会大大压缩。Maven管理项目生命周期过程都是基于插件完成的

Maven常用命令:
Clean编译、
compile清理,将target 下的class文件清理、
install安装命令,将工程的jar发布到本地仓库、
package将java工程打成jar、war、
tomcat7:run(tomcat:run)运行项目

定义依赖jar包版本变量:
将以下标签配置到pom.xml中,在引入的依赖中把版本改为
<version>${hibernate.version}</version>
这样以后要改框架版本,直接修改property标签即可。
<properties>
<hinernate.version>5.0.7.Final</hinernate.version> <spring.version>4.2.4.RELEASE</spring.version> <struts.version>2.3.24</struts.version>
</properties>

在开发中,通常会把一个项目分成多个模块来写,而写完之后如何能作为一个项目来运行呢?就需要用到聚合。
当多个模块中需要用Junit,这时每个模块中都需要去导入依赖,可以把这个重复性工作提高父项目,这时模块就可以继承父项目内的Junit。
聚合和模块通常是一起出现的,也有特殊情况,聚合内的子模块未必和父模块是继承关系。
回复 使用道具 举报
张裕
项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven仓库: 存放依赖和插件的空间
        中央仓库 : maven在安装的时候,自带的仓库 由maven团队维护
        本地仓库: maven的本地仓库,在安装maven后并不会创建,它是在第一次执行maven命令的时候才被创建
                存储在本机中 如果仓库中不存在所需的依赖 会从中央仓库中下载并存储
        私服: 私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的                Maven用户使用。

Maven常用命令
        compile:编译项目源码 生成class文件
        clean:将 target 下的 class 文件清空
        test: 执行单元测试类,执行 src/test/java 下的类
        package :将 java 工程打成 jar、war。
        install:安装命令,将工程中的 jar包发布到本地仓库

坐标: 由groupId 组id         artifactId 项目唯一标识符      version  版本号组成 类似于一个地址 指向某个点
聚合: 也可称为多模块 是为了能够使用一条命令就构造多个模块
继承: 在父POM中的pom.xml配置的坐标在子类中可以继承使用 减少了代码的重复
回复 使用道具 举报
王刘锁

maven环境搭建-下载解压后配置环境变量MAVEN_HOME = maven的路径 M2_HOME = 路径
在解压后的文件夹中找到conf文件夹下的settings.xml在文件中设置本地仓库<localRepository>仓库路径</localRepository>   
在eclipse中配置maven--window下的preference下installations中add添加maven解压路径然后user setting中选择maven中conf下的settings.xml,点击update setting 点击reindex点击apply点击ok
show view中找到maven下的repositories--ok--在窗口中右键第一个目录,rebulid index --完成就可以建项目了
建ssh项目注意web.xml和相关的配置文件,还有ssh相关jar包依赖要导入
本地仓库是在自己电脑上创建的仓库,远程仓库(中央仓库)是网络上的,中央仓库是阿帕奇组织的仅有一个,私服是自己公司创建的远程仓库用来自己内部使用
常用命令:clean--清除项目在maven中的class文件 compile--编译项目到maven  install--发布项目 package--打包项目
聚合就是一个父级项目来管理一群子级项目,继承是和聚合同时存在的,是子级项目具有父级项目的一些配置和依赖

回复 使用道具 举报
q55w66 中级黑马 2018-7-28 20:57:05
7#
Maven
        概述
                apache的开源项目,是项目管理工具,用于管理java项目
        组成
                项目对象模型(Project Object Model)
                        每个maven工程中都有一个pom.xml文件,用于定义工程所依赖的jar包、本工程的坐标、打包运行方式
                依赖管理系统
                        maven通过坐标对项目工程所依赖的jar包统一规范管理
                maven定义了一套项目生命周期
                        清理
                        初始化
                        编译
                        测试
                        报告
                        打包
                        部署
                        站点生成
                一组标准集合
                        强调:maven工程有自己标准的工程目标结构、定义坐标有标准
                maven管理项目生命周期过程都是基于插件完成的
        仓库
                中央仓库
                        远程仓库,仓库中的jar由maven团队统一维护
                        http://repo1.maven.org/maven2/
                本地仓库
                        相当于缓存,工程第一次会从远程仓库下载jar包,将jar包存在本地仓库
                私服
        环境搭建
                到maven官网下载http://maven.apache.org/download.cgi
                配置本地仓库
                        找到apache-maven-3.3.9\conf\settings.xml
                        在<settings>标签下配置本地仓库所在路径
<localRepository>D:\develop\maven_local_repository</localRepository>
                eclipse配置maven
                        配置maven安装目录
                                【Window】-【Preferences】-【Maven】-【Installations】
【Add...】,在Installation home配置maven路径即可
                        配置User Settings
                                【Window】-【Preferences】-【Maven】-【User Settings】
在User Settings配置apache-maven-3.3.9\conf\settings.xml
依次点击Update Settings-Reindex-Apply
                        重建本地仓库索引
                                【Window】-【Show View】-【Other...】-【Maven】-【Maven Repositories】
【Local Repositories】-【Local Repository(...)】,右键,Rebuild Index
                设置编译版本
                        【右键】-【Maven】-【Add Plugin】
搜索compiler,选择版本,并作一定补充后,Update Project...
————————————————————————————
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>2.3.2</version>
  <configuration>
    <source>1.8</source>
    <target>1.8</target>
  </configuration>
</plugin>
                配置环境变量
                        变量名:MAVEN_HOME
变量值:Maven根目录路径
                        变量名:PATH
变量值:%MAVEN_HOME%\bin
                        变量名:M2_HOME
变量值:Maven根目录路径
        项目生命周期
                分类
                        clean清理项目
                                pre-clean
                                clean
                                post-clean
                        default构建项目(核心)
                                ...
                                        validate
                                        initialize
                                        generate-sources
                                        process-sources
                                        generate-resources
                                        process-resources
                                compile编译源代码
                                ...
                                        process-classes
                                        generate-test-sources
                                        process-test-sources
                                        generate-test-resources
                                        process-test-resources
                                        test-compile
                                        process-test-classes
                                test单元测试运行测试代码
                                ...
                                        prepare-package
                                package将编译好的代码打包
                                ...
                                        pre-integration-test
                                        integration-test
                                        post-integration-test
                                        verify
                                install安装到本地Maven库
                                ...
                                        deploy
                        site生成项目站点
                                pre-site
                                site
                                post-site
                                site-deploy
                注意:三套生命周期相互独立,后面的阶段依赖于前面的阶段
        常见命令
                compile编译(生成target目录并存放编译好的class文件)
                clean清理(清理target目录下的class文件)
                test执行单元测试类
                package打包
                install将工程的jar发布到本地仓库
回复 使用道具 举报
陈叶隆
工程目录结构说明:
project
        /src/main/java      主体程序 java源文件(不要放配置文件)
        /src/main/resources  主体程序所需要的配置文件(不要放java文件)
        /src/test/java       单元测试程序 java源文件
        /src/test/resources   单元测试程序所用的配置文件
        /target            编译输出目录
pom.xml          Maven进行工作的主要配置文件。

常用命令如下:
compile:编译
clean:清理,将target下的class文件清理
test: 执行单元测试类,执行src/test/java下的类
package :将java工程打成jar、war。
install:安装命令,将将程的jar发布到本地仓库
发布到仓库,目录按照本工程定义的坐标生成目录

在pom.xml中添加servlet-api
因为我们创建的是war工程 ,需要response 和request 等对象,而这些对象是在servlet-api中的,所以我们需要添加servlet-api ,才能保证工程正常编译。
注意:必须指定scope为provided

目录名称:为了方便的快速定位内容,模块所处的目录应当与其artifactId一致(Maven约定而不是硬性要求),总之,模块所处的目录必须和<module>模块所处的目录</module>相一致

聚合模块减少的内容:聚合模块的内容仅仅是一个pom.xml文件,它不包含src/main/Java、src/test/java等目录,因为它只是用来帮助其它模块构建的工具,本身并没有实质的内容

回复 使用道具 举报
常小天
Maven是一个项目管理工具。它具有自己标准的工程目录结构和定义坐标的标准。通过pom.xml,根据坐标对jar包和项目进行统一规范的管理。Maven的坐标包括三部分:一是组id,一般为项目名称;二是模块id,为子项目名称;三是版本,分为snapshot(快照版,没有正式发行)和release(正式发行版本)。Maven的jar包实体保存在仓库中,在项目中通过坐标引用。在本机中的仓库叫本地仓库,项目中使用jar包时先到本地仓库中找,如果有就直接引用。如果没有,就去网络上的远程仓库中下载并保存到本地仓库中,以供项目使用。这样的远程仓库分为两种。一种是由Maven团队自己维护的仓库,叫中央仓库。另一种是企业或个人自行搭建一个私服作为仓库对外开放提供下载,这种就叫做私服。使用Maven,我们首先要上网下载Maven的压缩包。下载完成后解压,创建(拷贝)好本地仓库后,需要在Maven的配置文件settings.xml中配置本地仓库的路径。而我们要在Eclipse中使用Maven,还需要在首选项中配置Maven和settings的目录。之后还需要重建本地仓库索引,就算完成了Maven的准备工作。接下来我们就可以在Eclipse中创建Maven工程了。
回复 使用道具 举报
rkko 中级黑马 2018-7-28 21:25:06
10#
杜石苇
完成Maven环境搭建

设置环境变量maven_home和M2_home


能够分清几种仓库的区别
中央仓库由maven团队管理  可以由配置文件下载相应的依赖和插件
本地仓库是已经由中央仓库下载来的依赖和插件  无需联网可以使用
私服是其他公司架设的线上仓库  可以公开也可以不公开

熟练掌握常见命令
compile:编译
clean:清理,将target下的class文件清理
test: 执行单元测试类,执行src/test/java下的类    @test注解  或者  使用springframework提供的单元测试

新建测试类,并在该类上加上两个注解:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath*:ApplicationContext.xml"})
package :将java工程打成jar、war。
install:安装命令,将将程的jar发布到本地仓库


能够用Maven完成ssh项目的搭建
1 首先创建Maven war工程
2 添加SSH依赖和MYSQL依赖
3 添加spring配置文件和struts配置文件 和修改web.xml配置文件
4 编写Java代码 实体类 映射 业务层 dao层  web层 action

了解聚合和继承的区别

聚合的话是module  用IDEA可以很好的理解  IDEA创建一个工程后  new下面可以创建module  这样就是这个工程下的一个模块  多个模块不同功能可以聚合成一个项目

继承的话 某个模块要继承某个模块的功能


回复 使用道具 举报
何平波
Maven
  今天学习了Maven,Maven是一个强大的项目管理工具,为什么使用Maven呢?原本普通的动态web项目需要导入很多jar包,
形成了项目的体积大小一般都是挺大的,而Maven改变了这一个缺点,将项目工程所需要的jar包通过本地仓库,远程中央仓库,
私服的形式将jar包通过xml文件注入加载(管理jar包,把jar包从工程分离),从而减少了项目的体积大小,Maven也可以添加插件,
像tomcat服务器也可以通过xml注入加载的形式获取.
  如何搭建Maven环境呢?
1.下载Maven  www.maven.apache.org
2.配置Mavan环境变量 MAVEN_HOME  M2_HOME
3.配置仓库(联网远程仓库,不能联网本地仓库)
4.Repository 本地仓库(这个文件就是本地仓库,包含工程所需jar包)
5.eclipse配置maven   Prefernce>>>Maven>>>Installaction>>>add>>>directory>>>Maven安装路径
6.eclipse配置settings.xml文件查找本地仓库 Maven>>>UserSettings>>>UserSerttings>>>Maven本地仓库sessting.xml获取到本地仓库的路径
7.重建本地仓库的索引   MaVEN repositoris>>>rebuild index
8.创建Maven工程   MavenObject>>>Group id(工程名)>>>Artifact(工程名+)>>>Version(版本号)>>>Packaging(打包方式)
9.MavenModule >>>创建Maven子工程模块
10. add Plugin  添加插件    add dependency  注入依赖的jar包

注意:Maven web 工程需要区分java文件和配置文件的放置路径
1.java resourece/src/mian/java  存放的是java源码文件
2.java resourece/src/main/resources  存放的是xml配置文件和hibernate的bean类映射文件
3.一般来说新建maven的web工程都会报错,原因是缺少web.xml文件,暂且手动将web.xml存放在src/main/webapp/WEB-INF下
回复 使用道具 举报
完成Maven环境搭建
搭建比较简单,将官网下载下来的zip包解压到要自己指定的目录;环境变量里面进行设置;
变量名:MAVEN_HOME
变量值:解压后的maven所在路径

变量名:M2_HOME
变量值:跟MAVEN_HOME相同路径

变量PATH添加一句:%MAVEN_HOME%\bin;

然后可以在命令行下使用 mvn -version进行检验,当显示出版本号即搭建成功;
------------------------------------------------
能够分清几种仓库的区别
分为中央仓库,本地仓库,私服三种
中央仓库:由maven组织管理的仓库,为maven默认的统一仓库;

本地仓库:将本地的集合了jar包的文件夹作为maven配置时获取jar包的仓库,优点就是可以断网使用;

私服:将局域网内的一台服务器作为仓库,当公司里面有自己构建的框架时,使用这个来进行全部员工的maven的jar包配置,
    比本地仓库的效率高,

---------------------------------------------------------------------------

熟练掌握常见命令
clean:清除maven下该项目所有编译好的文件;
complie:编译该项目;
package:将项目打包,方便进行发布;
install:将该项目安装到maven仓库里,当我们在ide工具里面用写好一个maven的项目是,该项目是存在在该ide工具的工作空间,
只用通过install命令,才能将其配置到仓库中;
tomcat:run 使用默认的tomcat(6)运行装载该项目发布;
toncat7:run 使用后面配置的tomcat7装载该项目;
-----------------------------------------------------------------------------

能够用Maven完成ssh项目的搭建
1 导入ssh相关的jar包
2 三个配置文件struts.xml,类名.hmb.xml,web.xml
了解聚合和继承的区别
聚合:若干子模块项目包含在一个父项目里,夫项目为POM,子模块为jar;
继承:子项目继承一个父项目,继承了父项目的特性,都为POM;
回复 使用道具 举报
许剑鸿 mavenDay01

一.maven环境变量配置
MAVEN_HOME D:\apache-maven-3.3.9
PATH %MAVEN_HOME%\bin
在cmd 下输入mvn -v 有信息输出表示maven配置正常

本地仓库配置
获取本地仓库 存至硬盘某处  
打开maven的安装目录中conf/ settings.xml文件,在这里配置本地仓库: <localRepository>D:\repository_ssh</localRepository>
这里的意思是配置本地仓库的目录为D:\repository_ssh


eclipse配置maven
打开eclipse,选择菜单windows-Preferences---输入maven--->Installations--add---浏览本地文件选择maven安装目录--apply
配置User Settings
打开eclipse,选择菜单windows-Preferences---输入maven-->User Settings-->选择maven陆慕下conf下的settings.xml -->Update Settings-->Reindex-->apply

重建本地仓库索引
打开eclipse--window--show view --maven--maven repositories --->点开 local repositories-->右键Local Rspository--点击Rebuild Index

二.Maven仓库
1、中央仓库
就是远程仓库,仓库中jar由专业团队(maven团队)统一维护。
中央仓库的地址:http://repo1.maven.org/maven2/
2、本地仓库
相当于缓存,工程第一次会从远程仓库(互联网)去下载jar 包,将jar包存
在本地仓库(在程序员的电脑上)。第二次不需要从远程仓库去下载。先从本地
仓库找,如果找不到才会去远程仓库找。
3、私服
在公司内部架设一台私服,其它公司架设一台仓库,对外公开

三.常用命令
compile:编译
clean:清理,将targer下的class文件清理
test:执行单元测试类,执行src/test/java下的类
package:将java工程打包成jar或war
install:安装命令,将工程的jar发布到本地仓库,目录按照本工程定义的坐标生成目录

四.聚合和继承

聚合:就是把多个模块或项目聚合到一起,我们可以建立一个专门负责聚合工作的Maven 工程。

继承:我们在项目开发的过程中,可能多个模块独立开发,但是多个模块可能依赖
相同的元素,比如说每个模块都需要Junit,使用spring的时候,其核心jar也必
须都被引入,在编译的时候,maven-compiler-plugin 插件也要被引入。这时我们
采用继承,就不用在每个子模块分别定义了。(理解成类与类之间继承就行了)
聚合和继承通常是结合使用的,但是其作用是不同的。聚合是将多个模块的
工程汇聚到一起,而继承则是指明某个模块工程要继承另一个模块功能。

回复 使用道具 举报
江某人:
        今天学习安装了Maven,了解了Maven的工程目录,配置连接,添加依赖
        知道了 clean的作用是:清理Maven中的jar  war 之类的
                    compile的作用是:编译
                   install的作用是:将工程发布到本地仓库
        知道了在Maven中配置ssh的配置
        了解了Maven的聚合和继承
回复 使用道具 举报
Maven就是apache下的开源项目,项目管理工具,管理java项目,Maven有三个仓库,本地仓库,中央仓库,私服,我们的jar一般都再本地仓库中去配置查找,如果没有,就去中央仓库,前提访问中央仓库要联网,本地仓库就相当于缓存,下载到了自己的电脑中.

2配置本地仓库在apache-maven-3.3.9\conf下的settings.xml文件中
<localRepository>写本地仓库的位置 </localRepository>中去配置

3    clean 是清理,清除class文件和jar包
     Complie 是编译文件
     Package 是将编译好了的打包成jar ,war,ear 等
     Tomcat7:run  是运行tomcat
回复 使用道具 举报
sts 中级黑马 2018-7-28 21:46:13
16#
suhaibin
今天刚接触maven,maven作为一种管理工具,有助于项目工程开发的统一规范
在看视频的时候觉得环境搭建和使用挺简单的,但在实践的时候还是会忽略一些细节导致出现问题
maven的仓库分三种:中央仓库,本地仓库和私服
目前阶段下在不联网的时候主要使用本地仓库
maven的常用命令有:compile编译clean清理package打包install安装tomcat7:run等
聚合不等于继承,但他们通常结合使用,相辅相成,聚合是将多个模块的工程汇聚到一起,而继承则是指某个模块工程要继承另一个模块功能
回复 使用道具 举报
谢洪彬:
maven(一):
        概述:项目管理工具,相比以前的java项目或者web动态项目相对而言体积容量非常小,在实际开发中使用maven来管理项目不需要导入jar包,只需要引入相应的依赖即可.而实际的jar包则是存在于maven仓库中.       
        maven仓库的分类:
                1.中央仓库        -->由maven专业团队来管理
                2.本地仓库        -->本机电脑的意思
                3.私服            -->公司自己搭设的

Maven创建项目的三种格式:
Jar:资源形式存在,无需服务器(例:可以用于管理实体类)
        war需要服务器,运行起来的工程
        pom:顶级工程,聚合项目

maven的快速入门
1.在使用maven时还需要在电脑的系统中配置环境变量:
                1.        变量名:MAVEN_HOME
                1.1        变量值:maven文件的路径
                2.        变量名:M2_HOME
                2.1.        变量值:maven文件的路径
如果在启动tomcat时,控制台没有信息提示,则需要在
perferences-->java-->Installed JREs中的jdk修改Default_vm属性中添加这样一段代码:
                -Dmaven.multiModuleProjectDirectory=$M2_HOME
        2.perferences-->maven-->installations添加maven
        3..在maven文件中的conf下的settings.xml配置本地仓库路径
        4.perferences-->maven-->user settings中引入settings.xml文件的路径
5.在控制台找到maven Repositories下的localRepositories下的localRepository右键Rebuild index一下,重建索引,这样你就可以看到本地仓库中的所有jar包了
        在maven中很多功能都是基于插件的,当我们需要引入插件或者依赖时,可以在pom.xml文件中引入
        add Plugin --->引入插件
        add Dependency -->引入依赖       

Maven常用的命令:
clear:清空工作空间中的编译文件
compiler:编译代码
package:打包项目
tomcat:run 启动tomcat服务(默认Maven本地的tomcat)
tomcat7:run启动你自己配置的tomcat版本
        聚合和继承:
                集合和继承是相辅相成的,可以这么说有聚合必有继承
                聚合:管理很多个项目工程,顶层工程
                继承:和java中很相识,父类有的东西之类可以直接拿过来用.
                关系的表现可以在相应的pom.xml文件中查看.
回复 使用道具 举报
渣.. 中级黑马 2018-7-28 21:48:41
18#
柯威龙

今天学习了maven . 这是一个专门用于构建和管理java项目的工具.maven比action或web的动态项目整体文件相比的话
项目规格较小.因为使用了一个叫做pom.xml用于维护项目使用的jar包.maven有中央仓库和本地仓库.中央仓库\
就是远程仓库,本地仓库相当于缓存.工程从第一次从远程仓库下载将jar包
存在本地仓库.接下去就不需要从远程仓库去进行下载,除非说本地仓库没有.
还有一个私服.一般私服就是公司内部进行架设.电脑叫做仓库.
还要记住maven通过命令对工程进行清理,编译,测试,打包,部署的一些常见
的命令 例如: compile  编译  clean  清理  test  执行单元测试
package将java工程达成jar,war    install 安装命令,将工程的jar发布到本地仓库
主要学习的搭建SSH继承框架工程mavenweb.
回复 使用道具 举报
万冕

maven

首先,maven是一个项目管理工具,拿来管理java项目的,里面的核心配置文件pom.xml
pom(项目对象模型)

pom.xml里面可以定义工程里所要依赖的jar包,工程的坐标(Group id,Artifact ID,version)

maven仓库分为中央仓库,是maven团队维护的仓库
本地仓库是相当于缓存,将jar包直接存在本地文件夹里,需要jar包时,会先从本地仓库查找,找不到会去中央仓库寻找

私服就是公司里自己独立开发的一个私服仓库

配置本地仓库<localRepository>D:\repository_ssh</localRepository>
配置-Dmaven.multiModuleProjectDirectory=$M2_HOME 运行时才不会报错

maven常用的命令
compile 编译
clean 清理
package 将java工程打包成jar或者war
install 安装命令,将工程jar发布到本地仓库

聚合就是将一些多个模块集合在一起组成一个新的项目
继承就是和以前一样还是可以直接拥有父类的依赖之类的东西
回复 使用道具 举报
陈强
Maven的一天;
对于lib的引入,其实就是采用配置文件的形式进行引入,也就是<dependency>标签,可以称为依赖更专业.那么jar包都是从哪里引入呢,是从一个叫仓库的地方引入的,仓库中存放着我们工程所需要的那些jar包.
Maven就是一个工程的管理工具,管理的就是工程中的那些jar包.
Pom.xml(项目对象模型)是用于管理工程依赖的jar包的引入的一个配置文件.
Maven的环境变量配置:
        ---MAVEN_HOME:当前maven的路径
        ---M2_HOME:当前maven的路径
        ---PATH:% 当前maven的路径%bin
Maven仓库的配置(本地仓库):
        ---就是对settings.xml进行配置即可—(当前本地的仓库路径)
                ---对<localRepository>标签进行修改
        ---maven仓库的类型:
                ---中央仓库:使用中央仓库的话,要保证电脑是可以联网的.
                ---本地仓库:本地电脑的一个存放各种jar包的文件夹,相当于中央仓库,起的是缓存的作用
                ---私服:中央仓库也算是一种私服,只不过是唯一的私服
        ---引入的jar包在仓库中的地址,称为坐标.而坐标包含了ID和版本
在eclipse中配置maven:
Maven---installations---add(选择本地的路径)---勾选新添加的maven---User settings---关联maven中的settings.xml的配置文件即可---OK!!!
配置完成之后,建议对仓库的索引进行重建---rebuild index
工程的类型分为pom \ jar \ war----简单区别就是打包的方式不同
Pom类型的工程一般是存在于聚合工程中,而且是作为子类工程的一个依赖,所以在一个工程中一般只会有一个pom,而且一般都是父类(顶层工程)!!
Maven的三板斧!!!!---clean \ compile \ install
Install会将当前java的工程安装到仓库中,而我们运行的也是仓库中的工程为准,如果代码编写完成后没有install到仓库中,运行时就会有异常产生!!!
配置文件中可以对编译版本和依赖进行添加,maven –addplugin \ add dependency
关于maven的常用命令:
        ---clean:清理---将target下的class文件给清理掉
                ===清除.class文件的时候,也会将生成的jar文件也清理
        ---compile:编译,生成.class文件,并存放在target文件夹下
        ---package:将java工程打包成jar类型或者war类型的文件
                ===注意!!!执行package打包命令的时候,会自动编译java工程!!
        ---install:将本地的工程安装到本地的仓库中
使用maven进行SSH工程的搭建:
        ---添加框架所需的依赖
        ---建包结构
        ---配置文件的copy,并根据实际的环境进行修改
对于配置pom.xml的时候,依赖配置的时候,关于版本号的信息会出现很多的重复,所以可以将这些重复的版本号提取出来,进行重新的定义为一个标签,之后版本一样的就直接进行一个引用就可以了.如下:
        ---<properties>
                <spring.version>4.2.4.RELEASE</spring.version>
</ properties >
这样子的抽取主要是针对SSH三个框架中的依赖.
聚合:就是将多个模块或者项目聚合在一起,简单的理解就是用一个maven工程管理了多个maven工程,而对于多个maven工程,我们称之为模块.
在创建的时候,对于顶层工程也就是父工程,选择的是maven project,而在创建下级工程的时候,选择的是maven module,这个时候会选择父工程也就是顶层工程是哪一个.
在父工程中的pom.xml中,会包含子模块中的信息.
继承:父子结构的project,在父工程的添加了依赖之后,子工程就相当于同时也有了这个依赖.
关于继承与聚合之间的区别:
        ---聚合一般是多模块开发的时候会使用到,就是将多个模块聚合到一起,方便管理和操作
        ---继承一般是同样要使用到的配置文件会放在父工程中,子类就继承了父类的配置,无需多次的进行导入.
        ---聚合关系看父工程中的pom.xml,继承关系看子工程中的pom.xml
        ---一般有聚合关系就会有继承关系,而有继承关系不一定会有聚合关系


回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马