项目管理利器-Maven

1maven介绍

Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

2maven的目录结构

项目管理利器-Maven_第1张图片

3、maven的常用命令

1mvn -v 查看maven版本

2compile编译

3test 测试

4package打包

5clean 删除target

6install 安装jar包到本地仓库中

 

-Dgroup=组织名,公司网址的反写+项目名

-DartifactId=项目名-模块名

-Dversion=版本号

-Dpackage=代码所存在的包名

 项目管理利器-Maven_第2张图片项目管理利器-Maven_第3张图片

4、maven中的坐标和仓库

1)坐标

2)构件

3)仓库:本地仓库和远程仓库(全球中央仓库)

4)镜像仓库:http://maven.net.cn/content/groups/public

5)更改仓库位置


5、在myeclipse创建maven项目

            项目管理利器-Maven_第4张图片

       项目管理利器-Maven_第5张图片

       项目管理利器-Maven_第6张图片


点击finish然后maven就创建。然后采用以下方式运行pom.xml

在项目中的pom.xml上右键-run as-maven build-》在goals输入compile命令,然后run

项目管理利器-Maven_第7张图片


 --》再一次在pom.xml上右键-run as-maven build-》在goals输入package命令进行打包,然后run

就可以在看到编译文件class、测试surefire、打包war

项目管理利器-Maven_第8张图片

完整的项目构建过程包括:

清理、编译、测试、打包、集成测试、验证、部署

Maven生命周期:

清理项目:clean

构建项目:default

生命项目站点:site

 

6、pom.xml解析

指定了当前pom的版本

<modelVersion>4.0.0modelVersion>

<groupId>反写公司的网址+项目名groupId>

<artifactId>项目名+模块名artifactId>

<packaging>打包,可以是jarwarzippackaging>

<version>第一个0表示大版本号

   第二个0表示分支版本号

 第三个0表示小版本号

version>

<name>项目的描述名name>

<url>http://maven.apache.org项目的地址url>

<dependencies>

    <dependency>

      <groupId>groupId>

      <artifactId>artifactId>

      <version>version>

      <scope>scope> 依赖范围

 <optional>optional> 设置依赖是否可选

 <exclusion>exclusion>排除依赖传递列表

    dependency>

  dependencies>

插件列表

<build>

<finalName>hifinalName>

build>

project>

7、依赖的范围

test表示依赖只在测试范围

8、依赖的传递

项目中的依赖,被依赖的项目需要打包给其他项目依赖

9、依赖的冲突

(1)短路优先

如果有两个选择,则会选择短一点的先执行

A->B->C->x(jar)

A->D->x(jar)  这个执行

(2)先声明先优先

如果路径相同,则谁先声明,谁优先解析

10、聚合和继承

web项目的创建

其中一部分:

run configuration里录入:

  项目管理利器-Maven_第9张图片

1、 配置jvm参数,便于debug

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y -Djetty.port=8080

 

项目管理利器-Maven_第10张图片

2、 打包warjet

项目管理利器-Maven_第11张图片


  项目管理利器-Maven_第12张图片

3、 运行jetty

项目管理利器-Maven_第13张图片

4、 在浏览器地址栏输入

http://localhost:8080/myweb  可以看到

  项目管理利器-Maven_第14张图片


Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器

Tomcat 和 Jetty 都是作为一个 Servlet 引擎


项目的部分代码


xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
com.lin.hello
hello
war
0.0.1-SNAPSHOT
hello Maven Webapp
http://maven.apache.org


junit
junit
4.10
test


javax.servlet
javax.servlet-api
3.0.1
provided



hello


org.mortbay.jetty
jetty-maven-plugin
8.1.16.v20140903





你可能感兴趣的:(Java)