maven 初学

1. maven 安装

配置安装 路径

  1. maven 下载位置: D:\software\apache-maven-3.8.6

  2. 默认仓库位置: C:\Users\star-dream\.m2\repository 【已更改】

  3. 本地仓库 设置为:D:\software\apache-maven-3.8.6\.m2\repository

  4. 镜像已更改为阿里云中央镜像仓库

    xml 复制代码
    <mirrors>
    	<mirror>
    		<!--阿里云中央镜像仓库--> 
    		<id>nexus-aliyun</id>
    		<mirrorOf>*</mirrorOf>
    		<name>Nexus aliyun</name>
    		<url>http://maven.aliyun.com/nexus/content/groups/public</url>
    	</mirror>
    </mirrors>
  5. 配置文件更改成 jdk-1.8

    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>
    </profiles>
  6. 查看 maven 信息【mvn -v】


2. Maven 基本解读

(1)Maven 坐标

使用 向量 在**Maven** 的仓库]中唯一定位到一个**jar**包位置

  • groupId: 公司或组织的 id ,如:com.fly.maven
  • artifactId:一个项目或者是项目中某个模块的 id 【模块名称,一般为工程名】
  • version:版本号 【SNAPSHOT快照版本,RELEASE正式版本】

maven 坐标与 jar 包存储路径对应关系

Maven 本地仓库根目录\groupId\artifactId\version\xxx.jar

3. 使用 maven 创建工程

运行 mvn archetype:generate命令

新建一个文件夹 , 打开 cmd 窗口输入上方命令

  • 输入 groupId
  • 输入 artifactId
  • 默认版本号,直接回车【其余也直接回车】


4. 解读 pom.xml 文件

在工程下 pom.xnk 有完整注释

​ D:\study\maven-tutor\pro01-fly-java\pom.xml

5. maven 构建命令

温馨提示: 必须在 pom.xml 目录中使用 构建命令,否则报错!

  1. mvn clean 删除 target 目录
  2. 编译操作
    1. mvn compile 主程序编译
    2. mvn test-compile 测试程序编译
    3. target/classes 主体程序编译结果存放的目录
    4. target/test-classes 测试程序编译结果存放的目录
  3. mvn test 测试的报告存放的目录 target/surefire-reports
  4. mvn package 打包成 jar 包,存放在 target 目录
  5. mvn install 安装,将 jar 包存放在 maven 本地仓库中

6. mvn 命令

  1. mvn dependency:list 查询当前工程的依赖列表
  2. mvn dependency:tree 查询当前工程依赖以 树形 展开
  3. ...等等
相关推荐
知守观几秒前
技术考古:iBATIS 2.3.4 时代的持久层,是如何用 Map 玩转 307 个存储过程的?
java·后端·mybatis
znsoft11 分钟前
MaClaw(码卡龙)技术拆解:一个 Go + React 的可自进化智能体平台
开发语言·react.js·golang
captain3761 小时前
MyBatis Plus(1)
java·服务器·mybatis
香蕉大香蕉(06敬畏市场)1 小时前
MySQL 单点详解(08)
java·数据库·mysql·面试·八股
thefool1122661 小时前
HTTPS协议
java
acd120091 小时前
Nginx 反向代理的缓冲区坑:后端响应大时接口偶发 502
java·运维·nginx
装不满的克莱因瓶1 小时前
支付订单成功异步MQ权益发放设计和开发
java·架构·系统架构·rabbitmq·硬件架构
凉茶钱2 小时前
红黑树:用“颜色”换“平衡”,set 与 map 的底层发动机
开发语言·c++·红黑树
高冷小鱼殿下2 小时前
内部类Lambda与枚举
java·开发语言
shelly聊外贸2 小时前
WhatsApp 聊天记录如何导出为 CSV?使用 Python 进行数据分析
开发语言·python·数据分析