jdk:1.8
maven:3.3.9
eclipse:最新
WebModel:3.1
Jar:主要针对普通java项目
War:主要针对web项目
Maven:自动化构建工具,只要你按照人家规定的项目目录创建项目,就可以通过简单是命令完 成构建的工作
我们学习用到maven功能:
- 自动管理jar包
- 模块化开发
...............................
1、项目构建:编译、清理(把上次编译的class文件删除)、测试、打包、部署发布.......
构建:就是创建,管理以及发布部署项目
2、maven介绍
1、安装
2、配置环境变量——看自己的jdk环境变量配置有没有JAVA_HOME,如果没有按照规定配置,接下来 配置maven环境变量,新建一个M2_HOME的变量,值为maven安装目录
3、修改默认jdk版本: 修改settings.xml,找到profiles节点,在里面添加
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
4、修改默认仓库位置
3、Eclipse集成maven:修改比较多
1、使用自己安装的maven
2、识别本地仓库位置
3、修改jdk
-Dmaven.multiModuleProjectDirectory=$M2_HOME
4、约定的目录结构
项目名(模块名)
Src------>编写源代码的地方
Main------>用来放主程序
Java----->代码
Resources----->配置文件
Test------>
Java----->测试代码
Resources----->测试用到的配置文件
Pom.xml------->依赖配置文件(管理项目管理jar包)
1、创建maven普通java项目流程(打包方式为jar)
2、创建mavenweb项目流程(打包方式为war)
先把Dynamic web module前面的勾去掉,apply保存,然后在点上Dynamic web module前面的勾,然后配置webapp
5、仓库
1、本地仓库
2、私服仓库
3、中央仓库
POM
坐标(我这个jar包在仓库中的目录):gav
groupid:公司或组织的域名倒序
artifactId:当前项目名称+当前项目的模块名称
version:当前模块的版本
- 安装jar包到本地仓库
Mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2 -Dpackaging=jar -Dfile=D:\ojdbc6.jar
- 安装项目到本地仓库
cmd进入项目的目录:mvn install或者eclipse操作
- 依赖版本统一管理
<!-- 声明版本 -->
<properties>
<spring.version>4.1.6.RELEASE</spring.version>
</properties>
<!-- 使用版本 -->
${spring.version}
- 排除依赖:在依赖配置中排除指定的依赖
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
< /exclusion>
</exclusions>
- Jar包依赖
- 依赖介绍
- 依赖范围
- Compile:主程序以及测试程序以及部署(默认),可传递
- Test:测试程序(junit4)不参与部署,不可传递
- Provided:主程序测试程序有效,不参与部署(servletAPI,jsp-API),不可传递
- 依赖传递
原则:依赖路径最近原则,如果路径一致谁先配置依赖谁
- 项目的继承和聚合
继承:可以继承父工程的配置(非test作用域的依赖配置)
- 创建父工程(打包方式为pom)
- 在子工程中引入父工程
聚合:把多个模块聚合在一起
在父工程中配置聚合模块
项目分模块:
- 创建父工程:打包方式必须为pom
在构建的时候把mapper映射文件一起构建
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>