maven

maven基础知识

目录结构:

src
    -main
        -java
            -package
    -test
        -java
            -package
    resources

maven常用命令:

mvn -v 查看maven版本
compile 编译
test 测试
package 打包
clean 删除target
install 安装jar包到本地仓库中

maven坐标

<dependency>
    <groupId>整个路径名</groupId>
    <artifactId>包名-模块名</artifactId>
    <version>0.0.1SNAPSHOT</version>
</dependency>

maven仓库

本地仓库
中央仓库;国外的
镜像仓库;国内的
maven中有一个给我们提供的超级pom,所有的项目都是继承这个pom的。

D:\computerScience\Book.pdf\maven\apache-maven-3.5.0-bin\apache-
maven-3.5.0\lib\maven-model-builder-3.5.0.jar\org\apache\maven
\model

maven的安装目录路径lib\maven-model-builder-3.5.0.jar\org\apache\maven\model

完整的项目构建过程

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

maven生命周期

clean:清理项目
    pre-clean:执行清理前的工作
    clean:清理上一次构建生成的所有文件
    post-clean:执行清理后的文件
default:构建项目(最核心)
    compile,test,package,install
site:生成项目的站点
    pre-site:在生成项目站点前要完成的工作
    site:生成项目的站点文档
    post-site:在生成项目站点后要完成的工作
    site-deploy:发布生成的站点到服务器上
以上三个生命周期互相独立,命令也是互相独立,并且顺序执行的。
命令有:clean,compile,test,package,install,例如执行install命令,前面的命令也会默认先执行。

pom.xml解析,工程对象模型

<project>根标签
<modelVersion>当前pom版本
坐标信息
    <groupId>反写的公司网址+项目<artifactId>项目名+模块名
    <version>第一个0表示大版本号,第二个0表示分支版本,第三个0表示小版本
    0.0.1snapshot快照,alpha内部测试,beta公测,release稳定,GA正式发布
    <packaging>默认是jar,还可以是war,zip,pom
    <name>项目名字
    <url>项目地址
    <description>项目描述
    <developers>开发人员信息
    <licenses>许可信息
    <organization>组织信息
    <properties>一些属性
    $(name)=value
    <dependencies>依赖列表
        <groupId>
        <artifactId>
        <version>
        <type>
        <scope>以来范围,test为测试范围有用
        <optional>以来是否可选
        <exclusions>排除依赖
            <exclusion>
    <dependencyManagement>依赖管理,不会在项目中被使用,一般作为父类被继承
    <build>
        <plugins>插件列表
            <plugin>
    <parent>子模块对父模块的继承
    <modules>用来聚合多个maven项目

依赖的范围

maven中有3中classpath:1.编译,2.测试,3.运行
<scope>属性与classpath对应:maven官网上查看dependency scope
compile默认,3中全部有效
provided前两种有效
runtime测试和运行有效
test测试有效
system编译测试有效,可移植性差
import导入的范围,他只是用在dependencyManagement中,表示从其他的pom中导入dependency的配置
修改maven依赖的jdk
可以修改settings.xml中的<profile>
依赖冲突
1.短路优先
2.先声明先优先

maven的聚合和继承

聚合:modules
继承:公有类设置成父类,减少重复使用
    使用方法:利用<parent>和拥有<dependencyManagement>的项目的坐标

使用maven构建web项目

创建版本为webapp。不是quickstart。

第一步:创建dynamic web project

此处有错误需要修正,打开maven的中央仓库,寻找servlet

复制这样的到工程中

做好maven的目录结构

做好web工程的检查工作

1.项目上右键->properties->projectFacets

2.项目右键->buildpath

还是在maven中央仓库中找到jetty::jetty for maven,拷贝其依赖到pom.xml

这样运行pom,使用jetty:run或者是package都可以启动jetty服务器,然后再浏览器中输入localhost:8080

还可以是tomcat服务器,需要在tomcat官网上,利用maven plugin链接,其他都一样,最后输入localhost:8080/webdemo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值