`

1-Maven概述

 
阅读更多

1.Maven是什么

Maven不仅是一个构建工具,Maven更是一个项目管理工具,除了构建功能之外Maven还可以生成报告,生成Web站点,推动团队成员之间的交流。

 

Maven这个词可以翻译为“知识的积累”,也可以翻译为“专家”或“内行”。作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。无论是小型的开源类库项目,还是大型的企业级应用;无论是传统的瀑布式开发,还是流行的敏捷模式,Maven都能大显身手

 

2.Maven简单应用

2.1.下载apache-maven-3.0.5

 

2.2.配置环境变量

 

2.2.3环境变量配置完成测试
 输入Maven口令: mvn -v 进行测试是否安装成功


 

3.定义pom.xml文件 

3.1该文件用来约束maven写法


 

4.Maven入门口令介绍

第一个Maven命令:mvn compile(编译)

首先在指定的目录下建立一个工程名字为Maven-Demo的工程.

注意:同pom.xml文件中的<artifactId>中的名字相同

并手动创建该项目工程D:\mavenDemo\src\main\java\com\hp\maven

注意:红色部分为固定写法 绿色部分为pom.xml文件中的<groupID>属性相同

启动CMD切换到项目工程主目录 并执行 mvn compile 进行相应的依赖jar下载

 



下载成功后会在该工程的根目录下多出一个target目录  

         例如: target\classes\com\hp\maven

     \    该目录下放的是java编译后的class文件



 注:

        只要使用Maven这种模式生成目录结构并按照pom.xml指定的规则,它就会对java文件进行编译

   

5.建立测试 

            在src根目录下建立test目录

            目录结构:   test/java/com/hp/maven/TestHelloMaven.java

             并在pom.xml文件中引入依赖的jar文件

 

             比如引入junit.jar文件


 

         

          第二个Maven命令:mvn test(测试)

     打开cmd 切换到项目的根目录执行mvn test

     1.下载TestHelloMaven.java所依赖的jar文件

         2.并将TestHelloMaven.java编译成class文件



 Maven给我们带来直观的好处

       就这样我们就引入了junit.jar文件

       只要把我们的项目按照Maven的要求放到Maven的目

       录中它就会自动根据pom.xml配置,对我们的项目进

             行编译,测试,发布等等.

 

             执行完mvn test 命令会生成测试报告会多出三个文件夹来



 surefire-reports:用来存放测试信息报告

             Test-class:用来存放哪个类进行测试

 

      第三个Maven命令:mvn clean

       清空测试报告会删除target下的编译过得类和生成测试报告的三个文件夹



 
第四个Maven命令:mvn package

              4.1.下载相应的jar

              4.2. 执行测试类

              4.3.生成测试报告

              4.4.生成打包项目的信息

 

              4.5.将该项目进行打包

 

 6.在另一个工程中引入另一个工程的类

<?xml version="1.0" encoding="UTF-8"?>  
<project xmlns="http://maven.apache.org/POM/4.0.0"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    
    <!-- 针对一个项目的普遍唯一识别符。通常用一个完全正确
         的包的名字来与其他项目的类似名字来进行区分(比如:org.apache.maven) 

    -->
     <!-- groupId: groupId:项目或者组织的唯一标志,并且配置时生成的路径也是由此生成,
        如比如:org.apache.maven生成的相对路径为:/org/apache/maven -->
    <groupId>com.hp.maven</groupId>
    
    <!--项目的通用名称  -->
    <artifactId>maven-Demo2</artifactId>
    
     <!--当前项目产生的artifact的当前版本。 -->
    <version>0.0.2-SNAPSHOT</version>
    
    
    <!--引入项目工程中用到的jar包 这样就可以进行依赖jar包的下载-->
    <dependencies>
    	<!--引入某一个依赖-->
      <dependency>
         <groupId>junit</groupId>
      	 <artifactId>junit</artifactId>
      	 <version>4.1</version>
         <!-- scope 说明
                - compile :默认范围,用于编译 
                - provided:类似于编译,但支持你期待jdk或者容器提供,类似于classpath 
                - runtime: 在执行时,需要使用 
                - test:    用于test任务时使用 
                - system: 需要外在提供相应得元素。通过systemPath来取得 
                - systemPath: 仅用于范围为system。提供相应的路径 
                - optional:   标注可选,当项目自身也是依赖时。用于连续依赖时使用
            -->
            <scope>test</scope>
      </dependency>

    <dependency>
         <groupId>com.hp.maven</groupId>
      	 <artifactId>maven-Demo</artifactId>
         <version>0.0.1-SNAPSHOT</version>
    </dependency>

</dependencies>

</project>

 

   在执行 mvn compile 报错说

             [ERROR] Failed to execute goal on project maven-Demo2: Could not resolve dependencies for project com.hp.maven:maven-Demo2:jar:0.0.2-SNAPSHOT: Could n

 

ot find artifact com.hp.maven:maven-Demo:jar:0.0.1-SNAPSHOT -> [Help 1]

 

 第五个命令: mvn install

              mvn install 这个命令会把当前项目或模块打包之后注入到本地m2/Repository中,以供引用。我们平时做项目的时候,也常把   项目编译后打成jar包,让其他项目引用。maven提供的install命令更方便快捷的实现了这个操作,并且可供maven模块化管     理,mvn package 可以生成相应的jar

 

             然后就可以再另一个项目中通过在pom.xml配置的<dependency>

              <groupId>com.hp.maven</groupId>

                  <artifactId>maven-Demo</artifactId>

                 <version>0.0.1-SNAPSHOT</version>

             </dependency>

 

             就可以再另一个项目中引用另一个项目的类


 

 

 

 

           

 

   

 

 

 

 

 

 

  • 大小: 52.9 KB
  • 大小: 52.1 KB
  • 大小: 41.9 KB
  • 大小: 86.5 KB
  • 大小: 37.6 KB
  • 大小: 53 KB
  • 大小: 30.5 KB
  • 大小: 10 KB
  • 大小: 21.6 KB
  • 大小: 16.5 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics