Maven配置

发布于:2024-01-09 ⋅ 阅读:(177) ⋅ 点赞:(0)

Maven配置

Maven简介

Maven是专门为Java项目打造的管理和构建工具

项目结构

在这里插入图片描述

依赖管理

项目添加依赖时,pom.xml中添加如下内容即可引入对应commons-logging包

<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
</dependency>
  • groupId:属于组织的名称,类似Java的包名;
  • artifactId:该jar包自身的名称,类似Java的类名;
  • version:该jar包的版本。

可从如下网站搜索依赖包信息,复制包定位信息

网站:https://search.maven.org/

在这里插入图片描述

依赖关系

Maven定义了几种依赖关系,分别是compiletestruntimeprovided

scope 说明 示例
compile 编译时需要用到该jar包(默认) commons-logging
test 编译Test时需要用到该jar包 junit
runtime 编译时不需要,但运行时需要用到 mysql
provided 编译时需要用到,但运行时由JDK或某个服务器提供 servlet-api

其中,默认的compile是最常用的,Maven会把这种类型的依赖直接放入classpath

构建流程

Maven的生命周期(Lifecycle)由一系列阶段(phase)构成,以内置的生命周期default为例,它包含以下phase:

  • validate
  • initialize
  • generate-sources
  • process-sources
  • generate-resources
  • process-resources
  • compile
  • process-classes
  • generate-test-sources
  • process-test-sources
  • generate-test-resources
  • process-test-resources
  • test-compile
  • process-test-classes
  • test
  • prepare-package
  • package
  • pre-integration-test
  • integration-test
  • post-integration-test
  • verify
  • install
  • deploy

运行mvn package时,会执行validate—>package阶段

运行mvn compile时,会执行validate—>compile阶段

Maven另一个常用的生命周期是clean,它会执行3个phase:

  • pre-clean
  • clean (注意这个clean不是lifecycle而是phase)
  • post-clean

经常用到的phase如下:

  • clean:清理
  • compile:编译
  • test:运行测试
  • package:打包

执行一个phase又会触发一个或多个goal:

执行的Phase 对应执行的Goal
compile compiler:compile
test compiler:testCompile surefire:test

goal的命名总是abc:xyz这种形式。

Maven安装

官方网站:Maven – Welcome to Apache Maven

  1. 下载后本地解压

  2. 修改原有配置

    • 使用aliyun镜像

      修改apache-maven-3.3.9\conf\setting.xml文件

      <mirror>
          <id>nexus-aliyun</id>
          <mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
          <name>Nexus aliyun</name>
          <url>https://maven.aliyun.com/nexus/content/groups/public </url>
      </mirror>
      

      或者

      <mirrors>
          <mirror>
              <id>nexus-aliyun</id>
              <mirrorOf>central</mirrorOf>
              <name>Nexus aliyun</name>
              <url>http://maven.aliyun.com/nexus/content/groups/public</url>
          </mirror>
      </mirrors>
      
    • 配置 jdk1.8 编译项目

      <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>
      
    • 修改本地仓库位置

      <localRepository>C:/MySoftware/Maven/repository</localRepository>
      
  3. 配置环境变量

    • Linux

      MAVEN_HOME=/path/to/maven-3.8.x
      PATH=$PATH:$MAVEN_HOME/bin
      
    • Windows

      环境变量添加maven包bin路径

  4. 检查配置

    mvn -version # 显示版本号
    

IDEA配置

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

微信公众号

今日签到

点亮在社区的每一天
去签到