码迷,mamicode.com
首页 > 其他好文 > 详细

Maven(二)之Maven项目构建演练

时间:2017-04-20 10:37:16      阅读:312      评论:0      收藏:0      [点我收藏+]

标签:target   分享   mave   sources   目录   classes   安装配置   五步   pre   

从上一篇的讲解中我们知道了什么是Maven,然后它的安装配置,到修改本地仓库,这篇我们用一个实际的例子,带领大家走进我们的Maven之旅。让我们一起来体验一下Maven的高度自动化构建项目的过程。

一、创建HelloMaven项目

  1.1、创建HelloMaven,同时建立创建Maven约定的目录结构和pon.xml文件

    HelloMaven

      | --src
      | -----main
      | ----------java
      | ----------resources
      | -----test
      | ---------java
      | ---------resources
      | --pom.xml

  1.2、编写项目根目录下的pon.xml文件 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 3   <modelVersion>4.0.0</modelVersion>
 4   <groupId>com.jxlg.maven</groupId>
 5   <artifactId>Hello</artifactId>
 6   <version>0.0.1-SNAPSHOT</version>
 7   <name>Hello</name>
 8   
 9     <!--添加依赖的jar包-->
10     <dependencies>
11         <!--项目要使用到junit的jar包,所以在这里添加junit的jar包的依赖-->
12         <dependency>
13             <groupId>junit</groupId>
14             <artifactId>junit</artifactId>
15             <version>4.9</version>
16             <scope>test</scope>
17         </dependency>        
18         
19     </dependencies>
20 </project>

 

  1.3、在D:\HelloMaven\src\main\java\com\jxlg\maven下创建Hello.java

  代码为:

    技术分享

  1.4、在D:\HelloMaven\src\test\java\com\jxlg\maven下创建TestHello.java

      技术分享

二、使用Maven编译、清理、测试、打包项目

  2.1、使用maven编译项目,编译项目的命令是:"mvn compile"

  技术分享

  编译成功之后,可以看到hello项目的根目录下多了一个【target】文件夹,这个文件夹就是编译成功之后Maven帮我们生成的文件夹,

  打开【target】文件夹,可以看到里面有一个【classes】文件夹,【classes】文件夹中存放的就是Maven我们编译好的java类

  技术分享

  2.2、使用maven清理项目,清理项目的命令:"mvn clean"  

  技术分享

  2.3、使用Maven测试项目,测试项目的命令是:"mvn test"

  技术分享

  测试成功之后,可以看到hello项目的根目录下多了一个【target】文件夹,这个文件夹就是测试成功之后Maven帮我们生成的文件夹,

  打开【target】文件夹,可以看到里面有一个【classes】和【test-classes】文件夹

    技术分享

    也就是说,我们执行执行"mvn test"命令测试项目时,Maven先帮我们编译项目,然后再执行测试代码。

  2.4、使用Maven打包项目,打包项目的命令是:"mvn package"

    技术分享

    技术分享

   打包成功之后,可以看到hello项目的根目录下的【target】文件夹中多了一个Hello-0.0.1-SNAPSHOT.jar,这个Hello-0.0.1-SNAPSHOT.jar就是打包成功之后Maven帮我们生成的jar文件

      技术分享

  2.5、使用Maven部署项目,部署项目的命令是:"mvn install"

    进入Hello项目根目录执行"mvn install"命令测试项目

    技术分享

    技术分享

    安装成功之后,首先会在hello项目的根目录下生成【target】文件夹,打开【target】文件夹,可以看到里面会有Hello-0.0.1-SNAPSHOT.jar,这个Hello-0.0.1-SNAPSHOT.jar就是安装成功之后Maven帮我们生成的jar文件

    技术分享

    除此之外,在我们存放Maven下载下来的jar包的仓库也会有一个Hello-0.0.1-SNAPSHOT.jar,所以Maven安装项目的过程,实际上就是把项目进行【清理】→【编译】→【测试】→【打包】,再把打包好的jar放到我们指定的存放jar包的Maven仓库中

    技术分享

    所以使用"mvn install"命令,就把maven构建项目的【清理】→【编译】→【测试】→【打包】的这几个过程都做了,同时将打包好的jar包发布到本地的Maven仓库中,所以maven最常用的命令还是"mvn install",这个命令能够做的事情最多。

  2.6、组合使用maven的命令

    maven的编译,清理,测试,打包,部署命令是可以几个命令同时组合起来使用的,常用的命令组合如下:

    技术分享

    还有的就是"mvn clean test","mvn clean package","mvn clean install",这些组合命令都比较常用。

三、在别的项目中通过使用Maven安装生成的项目jar包

  在上面,我们使用mvn install命令将hello这个项目打包成了Hello-0.0.1-SNAPSHOT.jar包并且发布到本地的maven仓库E:\AStudySoftwere\mavenrepository\com\jxlg\maven\Hello\0.0.1-SNAPSHOT

  中,那我们该怎么去使用这个Hello-0.0.1-SNAPSHOT.jar包呢?

  第一步:新建OtherMaven项目,同时建立Maven约定的目录结构和pom.xml文件

      OtherMaven

      | --src
      | -----main
      | ----------java
      | ----------resources
      | -----test
      | ---------java
      | ---------resources
      | --pom.xml

  第二步:编辑项目OtherMaven根目录下的pom.xml,添加如下的代码:

    

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 3   <modelVersion>4.0.0</modelVersion>
 4   <groupId>com.jxlg.maven</groupId>
 5   <artifactId>OtherMaven</artifactId>
 6   <version>0.0.1-SNAPSHOT</version>
 7   <name>HelloFriend</name>
 8   
 9     <!--添加依赖的jar包-->
10     <dependencies>
11         <!--项目要使用到junit的jar包,所以在这里添加junit的jar包的依赖-->
12         <dependency>
13             <groupId>junit</groupId>
14             <artifactId>junit</artifactId>
15             <version>4.9</version>
16             <scope>test</scope>
17         </dependency>
18         <!--项目要使用到Hello的jar包,所以在这里添加Hello的jar包的依赖-->
19         <dependency>
20             <groupId>com.jxlg.maven</groupId>
21             <artifactId>Hello</artifactId>
22             <version>0.0.1-SNAPSHOT</version>
23             <scope>compile</scope>
24         </dependency>    
25     </dependencies>
26 </project>

  第三步:在D:\OtherMaven\src\main\java\com\jxlg\maven目录下新建文件OtherMaven.java

    技术分享

  代码为:

      技术分享

  第四步:在/src/test/java/com/jxlg/maven目录下新建测试文件HelloTest.java

    代码为:

    技术分享

  第五步:在OtherMaven目录下执行命令"mvn package"测试Hello-0.0.1-SNAPSHOT.jar里面的类是否引用成功

 

    

    

 

 

 

 

 

  

 

 

  

      

 

Maven(二)之Maven项目构建演练

标签:target   分享   mave   sources   目录   classes   安装配置   五步   pre   

原文地址:http://www.cnblogs.com/cxyzyh2017/p/6709233.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!