maven学习 Day2 2018-11-20

2018-11-20  本文已影响0人  Ernest_Chou

一、maven基础

4. maven的常用命令:

dos窗口进入项目pox.xml所在目录,执行命令:mvn tomcat:run

4.1. maven 常用命令
4.2. maven项目的生命周期

三套生命周期相互独立,互不影响。
在一套生命周期内,执行后面的命令,前面操作会自动执行。


maven的生命周期,项目构建过程
4.3 概念模型
maven概念模型

5. maven整合web项目

5.1. 配置maven插件
5.2. maven整合Servlet
1.选择创建maven项目 2.选择项目原型 3.maven项目信息

创建好的web项目,错误:

 <!-- 添加项目jdk编译插件 -->
  <build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
  </build>
5.3. 依赖的范围

添加依赖范围:默认是compile
provided:运行部署到tomcat不再需要。

修改依赖范围
依赖范围 对于编译classpath有效 对于测试classpath有效 对于运行时classpath有效 例子
compile Y Y Y spring-corer
test - Y - Junit
provided Y Y - servlet-api
runtime - Y Y JDBC驱动
system Y Y - 本地的,Maven仓库之外的类库
provided范围的jar包
5.4 运行、调试项目
maven手动命令 添加调试
5.5maven整合struts2
通过工具生成web.xml 自己添加插件 搜索插件
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <!-- 手动设置详细信息 -->
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
  </build>
  <!-- 配置Struts2框架核心过滤器 -->

  <filter>
    <filter-name>struts</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts</filter-name>
    <url-pattern>/*</url-pattern> <!-- .action或者空白结尾的会经过过滤器 -->
  </filter-mapping>

二、Maven实战

1.传递依赖冲突解决

1.1Maven自己调解原则
1.1.1 第一声明优先原则

谁先定义就用谁优先传递依赖

第一声明优先原则.图一
第一声明优先原则.图二
1.1.2 路径近者优先原则

直接依赖级别高于传递依赖。

路径近者优先.图一 路径近者优先.图二
1.2 排除依赖
排除依赖操作
排除依赖
1.3 版本锁定(推荐使用)
版本锁定
1.4 在配置文件中定义属性,使用ognl表达式引用属性值
定义属性 引用属性值

2. ssh配置文件加载过程

ssh配置加载流程
上一篇下一篇

猜你喜欢

热点阅读