目录
1:创建 Maven 工程
1.1:向量说明
1.2:坐标和仓库中 jar 包的存储路径之间的对应关系
1.3:使用命令生成Maven java 工程
1.4:使用命令生成Maven Web 工程
1.5:生成工程介绍
1.6:pom.xml 解读
2、Maven构建命令
2.1、清理 *** 作
2.2、编译 *** 作
2.3、测试 *** 作
2.4、打包 *** 作
2.5、安装 *** 作
1:创建 Maven 工程 1.1:向量说明
使用三个向量在 Maven 的仓库中唯一的定位到一个 jar 包。
向量名称 | 解释 | 取值方式 |
groupId | 公司或组织的 id | 公司或组织域名的倒序,通常也会加上项目名称 例如:com.xiaobaitutu.maven |
artifactId | 一个项目或者是项目中的一个模块的 id | 模块的名称,将来作为 Maven 工程的工程名 例如:artifactId:pro01-xiaobaitutu-maven |
version | 版本号 | 模块的版本号,根据自己的需要设定 例如:SNAPSHOT 表示快照版本,正在迭代过程中,不稳定的版本 例如:RELEASE 表示正式版本 例如:version:1.0-SNAPSHOT |
坐标:
javax.servlet
servlet-api
2.5
上面坐标对应的 jar 包在 Maven 本地仓库中的位置:
Maven本地仓库根目录\javax\servlet\servlet-api.5\servlet-api-2.5.jar
1.3:使用命令生成Maven java 工程
在工作空间目录下打开命令行窗口,运行 mvn archetype:generate 命令。默认生成 java工程
下面的 *** 作按照提示执行:
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 7:【直接回车,使用默认值】
Define value for property 'groupId': com.xiaobaitutu.maven【公司或组织域名的倒序,也会加上项目名称】
Define value for property 'artifactId': pro01-maven-java【Maven 工程的工程名】
Define value for property 'version' 1.0-SNAPSHOT: :【直接回车,使用默认值】
Define value for property 'package' com.xiaobaitutu.maven: :【直接回车,使用默认值】
Confirm properties configuration:
groupId: com.xiaobaitutu.maven
artifactId: pro01-maven-java
version: 1.0-SNAPSHOT
package: com.xiaobaitutu.maven Y: :【直接回车,表示确认。如果前面有输入错误,想要重新输入,则输入 N 再回车。】
1.4:使用命令生成Maven Web 工程
可以使用如下命令生成 web 工程
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -
DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=1.4
参数 archetypeGroupId、archetypeArtifactId、archetypeVersion 用来指定现使用的 maven-archetype-webapp 的坐标
下面的 *** 作按照提示执行:
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 7:【直接回车,使用默认值】
Define value for property 'groupId': com.xiaobaitutu.maven【公司或组织域名的倒序,也会加上项目名称】
Define value for property 'artifactId': pro01-maven-java【Maven 工程的工程名】
Define value for property 'version' 1.0-SNAPSHOT: :【直接回车,使用默认值】
Define value for property 'package' com.xiaobaitutu.maven: :【直接回车,使用默认值】
Confirm properties configuration:
groupId: com.xiaobaitutu.maven
artifactId: pro01-maven-java
version: 1.0-SNAPSHOT
package: com.xiaobaitutu.maven Y: :【直接回车,表示确认。如果前面有输入错误,想要重新输入,则输入 N 再回车。】
1.5:生成工程介绍
Maven 默认生成的工程。自动生成的 App.java 和 AppTest.java 可以删除。
1.6:pom.xml 解读
4.0.0
com.xiaobaitutu.maven
pro-maven-java
1.0-SNAPSHOT
UTF-8
junit
junit
4.12
test
2、Maven构建命令
运行 mvn -v 命令和构建 *** 作无关,只要正确配置了 PATH,在任何目录下执行都可以。运行 Maven 中和构建 *** 作相关的命令时,必须进入到 pom.xml 所在的目录。如果没有在 pom.xml 所在的目录运行 Maven 的构建命令,那么会看到下面的错误信息:The goal you specified requires a project to execute but there is no POM in this directory
2.1、清理 *** 作代码:mvn clean
效果:删除 target 目录(存放构建 *** 作输出的结果)
2.2、编译 *** 作主程序编译:mvn compile
测试程序编译:mvn test-compile
主体程序编译结果存放的目录:target/classes
测试程序编译结果存放的目录:target/test-classes
2.3、测试 *** 作代码:mvn test
测试的报告存放的目录:target/surefire-reports
2.4、打包 *** 作代码:mvn package
根据打包方式决定打包的结果——jar /war 包,存放的目录:target
2.5、安装 *** 作代码:mvn install
安装的效果是将本地构建过程中生成的 jar 包存入 Maven 本地仓库。这个 jar 包在 Maven 仓库中的路径是根据它的坐标生成的。
举例
坐标信息如下:
com.xiaobaitutu.maven
pro01-maven-java
1.0-SNAPSHOT
在 Maven 仓库中生成的路径如下:
D:\maven-rep1026\com\xiaobaitutu\maven\pro01-maven-java\1.0-SNAPSHOT\pro01-maven-java-1.0-SNAPSHOT.jar
另外,安装 *** 作还会将 pom.xml 文件转换为 XXX.pom 文件一起存入本地仓库。所以我们在 Maven 的本地仓库中想看一个 jar 包原始的 pom.xml 文件时,查看对应 XXX.pom 文件即可,它们是名字发生了改变,本质上是同一个文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)