maven概述

一、maven介绍

      1) maven是项目管理工具,对软件项目提供构建与依赖管理

      2)maven是Apache下的开源java项目

      3 )maven为Java项目提供统一的管理方式

二、maven核心特性

     1)项目设置遵循统一的规则,保证不同开发环境的兼容性

     2)强大的依赖管理,项目依赖组件自动下载、自动更新

     3)可拓展的插件机制

三、maven的下载安装

      1.下载链接:

      2.点击左侧downloa-找到Files-找到Binary zip archive  点击apache-maven-3.6.1-bin.zip 下载

      3.解压进入文件夹的bin目录下,复制url

      4.右击计算机----属性---高级系统设置-----环境变量---系统变量----点击path----新建----粘贴url---确认

      5.cmd---mvn -v 运行显示maven版本以及jdk版本信息

四、maven项目标准结构

   

maven archetype 区别 mavenarchiver_maven

五、maven的依赖管理

        1)Maven利用dependency(依赖)自动下载、管理第三方jar包

        2)在pom.xml中配置依赖的第三方组件

        3)maven自动将依赖从中央仓库下载至本地仓库,并在工程中引用

      在pom.xml配置如下:<dependencies>

                                             <dependency>
                                                <groupId>com.belerweb</groupId>
                                                <artifactId>pinyin4j</artifactId>
                                                <version>2.5.1</version>
                                            </dependency>

</dependencies>

    maven远程仓库/中央仓库访问的url:search.maven.org,寻找需要的jar包的依赖

六、本地仓库和中央仓库

        1)查看本地仓库:打开eclipse idea---Window---Peferences--Maven--User setting--Local Repository----C:\Users\xiaoming-pc\.m2\repository

        2 )中央仓库:国外服务器,访问耗时较长,可利用国内代理服务器即私服下载较快,如maven.aliyun.com

        3)设置私服  <repositories>
                          

<repository>
                                           <!-- 创建私服地址,节省访问国外服务器的时间 -->
                                           <id>aliyun</id>
                                          <name>aliyun</name>
                                          <url>https://maven.aliyun.com/repository/public</url> 
                                 </repository>
                          </repositories>

        4)maven优先查询本地仓库----私服----中央仓库

           

maven archetype 区别 mavenarchiver_war包_02

七、maven项目打包

            1)maven项目打包是通过Plugins(插件)技术实现的,maven可将java项目打包为jar,war包,maven输出jar包插件为  maven-assemly-plugin

            2)配置相关:

    

<build>
<!-- 配置相关插件,将工程打包成jar包 -->
         <plugins>
                <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-assembly-plugin</artifactId>
                      <version>2.5.5</version><!-- 配置打包相关细节 -->
                      <configuration><!-- 指定jar包的入口类 -->
                           <archive>
                              <manifest>
                                  <mainClass>com.imooc.maven.PinyinTest</mainClass>
                              </manifest>
                           </archive><!-- 配置打包过程中使用的额外参数 -->
                           <descriptorRefs><!-- 在打包时会将所有引用的jar包合并到输出的jar文件中 -->
                             <descriptorRef>jar-with-dependencies</descriptorRef>
                           </descriptorRefs>
                      </configuration>
                </plugin>
         </plugins>
    </build>                       3)运行生成相关jar包  Run-Run Configurations-Maven Build--new Configuration--填写Name:build-jar    Base directory:选择项目   
                            Goals:assembly:assembly--Apply--Run
                     4)根据控制台输出,找到生成的jar包所在的位置,地址栏输入cmd----输入指令java -jar  maven-first-1.0.0.0-RELEASE-jar-with-dependencies.jar--运行jar包八、maven构建web项目
        new  Maven Project---勾选两个,create a simple project和default ---next

       

maven archetype 区别 mavenarchiver_jar包_03

        ----Finish-----

maven archetype 区别 mavenarchiver_war包_04

 

 

                     ---在src/main下新建webapp文件夹

maven archetype 区别 mavenarchiver_maven archetype 区别_05

 

-----点击maven---右键propertiy,java Compiler 修改jdk为1.8

maven archetype 区别 mavenarchiver_war包_06

-------修改Project Facets

maven archetype 区别 mavenarchiver_war包_07

maven archetype 区别 mavenarchiver_maven archetype 区别_08

最终项目结构

maven archetype 区别 mavenarchiver_war包_09

                        4)测试,在webapp下新建index.jsp,点击service--右键add and remove 添加项目到Tomcat---启动DTomcat--输入 localhost:8080/maven/index.jsp测试

九、web应用打包

             1)将maven项目打包成war包是通过maven-war-plugin(插件)技术实现的

             2)配置相关:

                                        <build>

                                              <!--定义导出war包的名字,此时的访问路径为    http://localhost:8080/wartest(最终war包名称)/index.jsp-->
                                               <finalName>wartest</finalName>
                                                  <plugins>
                                                         <plugin>
                                                                 <groupId>org.apache.maven.plugins</groupId>
                                                                 <artifactId>maven-war-plugin</artifactId>
                                                                 <version>3.2.2</version>
                                                         </plugin>
                                                  </plugins>
                                        </build>

               3)注意:<!-- packaging可设置导出格式为jar或war包,系统默认导出为jar包,需导出war包则必须设置packaging属性 -->
                                                   <packaging>war</packaging>

              4)生成war包:Run Configurations---Maven Build 右键---new Configuration

maven archetype 区别 mavenarchiver_war包_10

                    5)运行war包----查看控制台找到生成war路径(D:\eclipse-workspace\maven\target)----复制war包放到Tomcat的webapps目录下----进入Tomcat的bin目录运行

                         startup.bat启动Tomcat---打开浏览器输入访问地址

十、Maven常用命令

maven archetype 区别 mavenarchiver_war包_11

十一、maven修改本地仓库地址

           1)系统默认本地仓库地址:C:\Users\xiaoming-pc\.m2\repository

           2)修改方法:打开maven安装目录-----conf----修改settings.xml3

maven archetype 区别 mavenarchiver_jar包_12

            3)修改后还需要在idea中生效,以eclipse为例,windows-preferences-maven-installations(确认勾选的是自己的maven)--user settings  更改第二个browse,指向自己修

                 改的settings---updates settings--Reindex---apply修改完成

十二、IDEA操作Maven

                    1)idea中配置maven

maven archetype 区别 mavenarchiver_maven archetype 区别_13

                   2)新建maven项目

                         file-new project---maven---next----填写相关groupId,项目存放位置等---一直next直到finish