Maven配置

发布时间:2024年01月07日

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
compilecompiler:compile
testcompiler: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配置

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_56005963/article/details/135442224
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。