maven
是一个专门为java
项目打造的项目管理和构建工具
- 提供了一套标准的项目结构
- 提供了一套标准的构建流程(编译,测试,打包,发布......)
- 提供了一套依赖管理机制
maven
的项目结构
- 普通的
java
项目pom.xml
:maven
项目配置文件src/main/java
:存放java
源码src/main/resources
:存放资源文件的目录src/test/java
:存放测试源码的目录src/test/resources
:存放测试资源的目录target
:存放所有编译、打包生成的文件
修改默认本地仓库
找到localRepository
标签,复制该行,填写本地仓库路径,如图所示。
修改默认远程仓库
在mirrors
标签中添加阿里的maven
仓库镜像
<!--阿里云公共仓库-->
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
pom.xml文件
modelVersion
:maven
模板的版本,对于maven2
和maven3
来说,它只是有4.0.0
groupId
:组织id
,一般是公司域名的倒写。
- 域名倒着写:
com.baidu
- 域名倒着写+项目名:
com.baidu.appolo
artifactId
:项目名称,也可以是项目模块名称,对应groupId
中的子项目。version
:项目的版本号。如果项目还在开发中,是不稳定版本,通常在版本后带-SNAPSHOT
。version
使用三位数字标识,例如:1.0.0
注意:groupId
+artifactId
+version
称为坐标。唯一值,在互联网中唯一标识一个项目。
1 <groupId>公司域名的倒写</groupId>2 <artifactId>自定义项目名称</artifactId> 3 <version>自定义版本号</version>
packaging
:打包后压缩文件的扩展名,默认是jar,web应用是war。- 依赖
1 <dependencies>2 <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> 3 <dependency> 4 <groupId>mysql</groupId> 5 <artifactId>mysql-connector-java</artifactId> 6 <version>8.0.25</version> 7 </dependency> 8 </dependencies> properties
:设置属性build
:maven在进行项目的构建时,配置信息,例如指定编译java代码使用的jdk的版本
- mvn clean
- mvn compile
- mvn test-compile
- mvn test
- mvn package
- mvn install
- mvn deploy
以上的操作是配置当前项目的maven,要想对新的项目也有效,就需要配置File
中的Other Settings
,如图所示。
创建Java项目
点击"Next"。
填写坐标,点击"Next"。
然后更改maven配置,使用自己安装的maven。
最后点击"Finish"。
在创建好的maven项目中创建两个文件夹,有时候会自动创建,有时候不会自动创建,需要自己手动创建。在main
目录下创建resources
目录,并且右击resources目录,选择Mark Directory as中的Resources Root,如图1。在test
目录下创建resources
目录,并且右击resources目录,选择Mark Directory as中的Test Resources Root,如图2。
图1
图2
设置项目编译命令
项目的打包
创建Web项目
- 选择maven模板
maven-archetype-webapp
其它的都选Next
,最后选Finish
即可。
创建好Web项目后,修改一下pom.xml配置文件,把默认的jdk1.7改为1.8,把junit4.11改为junit4.12,将pluginManagement
标签中删除。只保留如下图所示的内容。
在plugins
标签中写入如下内容
1 <!-- jetty 插件 --> 2 <plugin> 3 <groupId>org.eclipse.jetty</groupId> 4 <artifactId>jetty-maven-plugin</artifactId> 5 <version>9.4.15.v20190215</version> 6 <configuration> 7 <httpConnector> 8 <port>9090</port> <!-- 这里指定 jetty 服务的端口号 --> 9 </httpConnector> 10 <webAppConfig> 11 <contextPath>/maven02</contextPath> <!-- 这里指定在浏览器访问时,当前Web应用的根路径 --> 12 </webAppConfig> 13 </configuration> 14 </plugin>
在plugins
标签中再写入tomcat
插件信息 - 1 <!-- Tomcat 插件 --> 2 <plugin>
3 <groupId>org.apache.tomcat.maven</groupId>
4 <artifactId>tomcat7-maven-plugin</artifactId>
5 <version>2.1</version>
6 <configuration>
7 <port>8081</port> <!--启动端口默认:8080 -->
8 <path>/test</path> <!--项目的站点名,即对外访问路径-->
9 <uriEncoding>UTF-8</uriEncoding> <!--字符集编码默认:ISO-8859-1 -->
10 <server>tomcat7</server> <!--服务器名称 -->
11 </configuration>
12 </plugin>
先来配置maven启动jetty -
然后就可以点击右上角的运行按钮了,如图所示。
当你看到这些信息说明成功运行jetty服务器
指定端口的另一种方式是在命令中jetty:run -Djetty.http.port=9090
配置tomcat同理,如图所示。
- 创建父模块,什么也不用选,直接点击
Next
,然后填写GroupId
和ArtifactId
,点击Next
,最后点击Finish
即可。
- 创建maven_dao模块
- 修改JDK版本
单元测试版本
删除pluginManagement
标签