基本目录机构
src
-main
-java
-package
-test
-java
-package
-resouce
常用的构建命令
- mvn -v 查看版本号
- mvn compile 编译
- mvn test 测试
- mvn package 打包
- mvn clean 删除
- mvn install 安装jar包到仓库
自动创建目录两种方式
- archetype:generate 按照提示输入参数
- archetype:generate -DgroupdId=组织名,公司网址反写+项目名 -DartifictId=项目名-模块名 -Dversion=版本号 -Dpackage=代码所在的包名
修改本地仓库地址和镜像仓库地址
修改setting.xml中的<localRepository>和<mirrors> 标签
生命周期
clean 清理项目
- pre-clean 执行清理前的工作
- clean 清理上次构建的所有文件
- post-clean 执行清理后的文件
default 构建项目(核心)
- compile test package install
site 生成项目站点
- pre-site 在生成项目站点前要完成的工作
- site 生成项目站点的工作
- post-site 在生成项目站点后要完成的工作
- site-deploy 发布生成的站点到服务器上
依赖范围
- compile 默认的范围,编译测试运行都有效
- provided 在测试和编译时有效
- runtime 在测试和运行时有效
- test 只在测试范围有效
- system 与provided相似,与本地系统相关联,可移植性查
- import 导入的范围,只使用在dependcyManagement中,表示从其他pom中继承的依赖
依赖冲突时
- 短路优先
- pom位置声明优先
使用jetty容器启动项目
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
<configuration>
<scanIntervalSeconds>3</scanIntervalSeconds>
<webAppConfig>
<contextPath>/</contextPath>
</webAppConfig>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8080</port>
</connector>
</connectors>
</configuration>