
1.11 依赖管理系统
<--依赖引用示例-->
<dependency>
<groupId>javax.servletgroupId>
<srtidactId>javax.servlet-apisrtidactId>
<version>3.1.0version> //项目版本
dependency>
groupId
定义当前Maven项目隶属的实际项目-公司名称(jar包所在仓库路径)
srtidactId
该元素定义实际的项目中的一个Maven模块项目名
version
定义Maven项目当前的版本
2. Maven的安装与配置和目录结构 2.11 检查jdk的版本jdk版本最好在1.7以上
2.12 下载Maven
http://maven.apache.org.download.html 下载地址
2.13配置Maven环境变量
解压后把Maven的bin目录配置到系统环境变量中MAVEN_HOME
2.14 检查Maven是否安装成功
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9kkyzc2k-1652403857344)(http://www.kaotop.com/file/tupian/20220514/b37876ebf50d5.png)]
2.21 Maven目录结构
| 目录 | 目的 |
|---|---|
| ${basedir} | 存储pom.xml和所有的子目录 |
| ${basedir}/src/main/java | 项目的java源代码 |
| ${basedir}/src/main/resource | 项目的资源。比如说property文件 |
| ${basedir}/src/test/java | 项目的测试类,例:Junit代码 |
| ${basedir}/src/test/resource | 测试使用的资源 |
2.22 cmd下编译运行
cmd下 进入根目录下
- 编译
根目录>mvn compile
- mvn exec:java -Dexec.mainClass=“cn.guang.demo.hello”
3.1格式:命令
mvn[plufin-name]:[goal-name]
| 命令 | 描述 |
|---|---|
| mvn -version | 显示版本信息 |
| mvn clean | 清理项目生产的临时文件,一般是模块下的target目录 |
| mvn compile | 编译源代码。一般编译模块下的src/main/java目录 |
| mvn package | 项目打包工具,会在模块下target目录生成jar或者war等文件 |
| mvn test | 测试命令,或执行scr/test/java/下junit的测试用例 |
| mvn install | 将打包的jar/war文件复制到你的本地仓库中,供其他模块使用 |
| mvn deploy | 将打包的文件发布到远程参考,提供其他人员进行下载依赖 |
| mvn site | 生成项目相关信息的网站 |
| mvn eclipse:eclipse | 将项目转化为Eclipse项目 |
| mvn dependency:tree | 打出项目的整个依赖树 |
| mvn tomcat7:run | 在tomcat容器中运行web项目 |
| mvn jetty:run | 调用Jetty插件的Run目标在Jetty Servlet容器中启动Web应用 |
| mvn archetype:generate | 创建Maven的普通Java项目 |
3.2 命令参数
3.2.1 -D传入属性参数
例如:
mvn package -Dmaven.test.skip=true
//告诉maven打包时跳过单元测试
3.2.2 -P 使用指定的Profile配置
<profiles>
<profile>
<id>devid>
<properties>
<env>devenv>
properties>
<activation>
<activeByDefault>trueactiveByDefault>
activation>
profile>
<build>
<filters>
<filter>config/${env}.propertiesfilter>
filters>
<resources>
<resource>
<directory>src/main/resourcesdirectory>
<filtering>truefiltering>
resource>
resources>
build>
profiles>
profiles定义了各个环境的变量的id。filters中定义了变量配置文件的地址。其变量值就是上面profile中定义的值,
通过不同环境进行打包部署 例如:
mvn package -Pdev -Dmaven.test.skip=true
表示打包本地环境,并跳过单元测试
4.使用IDEA集成Maven环境选择File–>new Project settings–>搜索maven -->Maven home directory 选择Maven安装根目录
5. 创建Maven项目 idea创建普通java的Maven项目结构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tQaT5j6U-1652403857345)(http://www.kaotop.com/file/tupian/20220514/c0c3341d2e4fe.png)]
创建Web项目
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oLuvjw4s-1652403857346)(http://www.kaotop.com/file/tupian/20220514/20a36e8aabd1e.png)]
IDEA创建maven 的web项目结构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hJWyLlsG-1652403857347)(http://www.kaotop.com/file/tupian/20220514/eec8480d2b7bc.png)]
创建完web项目之后,更改pom.xml 的配置[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yTjDOonN-1652403857348)(http://www.kaotop.com/file/tupian/20220514/67c842220116e.png)]
5.2 maven项目配置jetty服务器插件[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u2RNw33C-1652403857348)(http://www.kaotop.com/file/tupian/20220514/b92cb9bb1d02a.png)]
使用命令更改端口号
Command line: jetty:run -Djetty.port =8080;
5.2maven项目tomcat的配置
<plugins>
<plugin>
<groupId>org.apache.tomcat.mavengroupId>
<artifactId>tomcat7-maven-pluginartifactId>
<version>2.2version>
<configuration>
<port>8081port>
<path>/test02path>
configuration>
plugin>
plugins>
5.2.1 maven项目jetty的配置
org.mortbay.jetty
jetty-maven-plugin
/demo //注释一 此处为项目的上下文路径
82 //注释二 此处配置了访问的端口号
60000
6. maven仓库的概念
对Maven来说 仓库之分两类:本地仓库和远程仓库
a)、远程仓库:
- 中央仓库
- 私库
- 其他库
常用的阿里云仓库配置
<mirror>
<id>nexus-aliyun id>
<mirrorOf>central mirrorOf>
<name>Nexus aliyun name>
<url>http://maven.aliyun.com/nexus/content/repositories/central url>
mirror>
7. Maven 环境下创建多模块项目
| 模块名称 | 描述 |
|---|---|
| maven-parent | 基模块常说的parent (pom) |
| maven-dao | 数据库访问层 例如jdbc *** 作 (jar) |
| maven-service | 项目逻辑层 (jar) |
| maven-controller | 用来接收数据,响应数据 (war) |
创建后的目录结构
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DXFObeK8-1652403857349)(http://www.kaotop.com/file/tupian/20220514/8cadd3139167b.png)]
依赖关系:
maven_dao–>maven_service–>maven_contorller
<groupId>cn.guanggroupId>
<artifactId>XXXXartifactId>
<version>1.0-SNAPSHOTversion>
将被依赖的模块的pom.xml文件下唯一标识,拷到依赖者的pom.xml文件下
<dependencies>
<dependency>
<groupId>cn.guanggroupId>
<artifactId>XXXXartifactId>
<version>1.0-SNAPSHOTversion>
dependency>
dependencies>
配置启动Maven多模块项目
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KYUm4bvq-1652403857350)(http://www.kaotop.com/file/tupian/20220514/dda1310051618.png)]
8. Maven的打包 *** 作 8.1创建对应的目录结构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3NpgqGpb-1652403857351)(http://www.kaotop.com/file/tupian/20220514/f7c89fa50f9de.png)]
8.2 添加Profile配置
<profiles>
<profile>
<id>devid>
<properties>
<env>devenv>
properties>
<activation>
<activeByDefault>trueactiveByDefault>
activation>
profile>
<profile>
<id>testid>
<properties>
<env>testenv>
properties>
profile>
<profile>
<id>productid>
<properties>
<env>productenv>
properties>
profile>
profiles>
将对于项目资源文件的配置放在build中
<build>
<finalName>maventestfinalName>
<resources>
<resource>
<directory>src/main/resources/${env}directory>
resource>
<resource>
<directory>src/main/javadirectory>
<includes>
<include>**/*.xmlinclude>
<include>**/*.propertiesinclude>
<include>**/*.tldinclude>
includes>
<filtering>falsefiltering>
resource>
resources>
build>
打包命令:
clean compile package -Pdev -Dmaven.test.skip=true
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)