Java基础教程(22)-构建工具Maven的基本使用

简介: 【4月更文挑战第22天】Maven是Java项目管理及构建工具,简化构建、测试、打包和部署等任务。遵循约定优于配置原则,核心是`pom.xml`配置文件,用于管理依赖和项目信息。安装涉及下载、解压、配置环境变量。在IDEA中使用Maven创建项目,通过`pom.xml`添加依赖和管理版本。常用命令包括`clean`、`compile`、`test`、`package`、`install`和`deploy`。IDEA支持直接执行这些命令。

构建工具Maven的基本使用

基于Windows机器和IDEA开发工具

maven介绍:

Maven 是一款流行的项目管理和构建自动化工具,尤其在 Java 开发领域被广泛应用。它遵循约定优于配置的原则,提供了一套标准化的构建流程、依赖管理和项目信息管理机制,极大地简化了软件项目的构建、测试、打包、部署等工作。

Maven下载和配置

  • 下载:访问 Maven 官方网站 下载最新稳定版本的安装包。
  • 解压:将下载的 .zip.tar.gz 文件解压到指定目录

  • 设置环境变量

    • 添加系统环境变量 M2_HOME,指向 Maven 解压后的目录。
    • 在系统环境变量 Path 中加入 %M2_HOME%\bin,使得可以在命令行直接运行 mvn 命令。
  • 验证安装:在命令行中输入 mvn -v,如果显示 Maven 的版本信息,说明安装成功。

创建 Maven 项目

  • 在IntelliJ IDEA 等集成开发环境中,使用内置的 Maven 项目创建向导,填写项目信息并选择 Archetype。

在这里插入图片描述

Maven 项目的pom.xml

pom.xml 是 Maven 项目的核心配置文件,主要包括以下内容:

  • 基本信息groupId(组织标识)、artifactId(项目唯一标识)、version(项目版本)。
  • 依赖管理:声明项目所需的依赖,包括 groupIdartifactIdversion
  • 构建配置:设置构建过程中的插件、构建目标、资源过滤规则等。
  • 插件管理:集中定义插件的版本,避免在各个插件声明中重复。
  • 构建 Profiles:为不同的构建环境(如开发、测试、生产)定义特定配置。

一个pom.xml大概是这个样子:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>project</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- 依赖项 -->
    <dependencies>
        <dependency>
            <groupId>...</groupId>
            <artifactId>...</artifactId>
            <version>...</version>
        </dependency>
        <!-- 更多依赖 -->
    </dependencies>

    <!-- 构建配置、插件等 -->
    <!-- ... -->
</project>

使用pom.xml管理项目依赖

  • 添加依赖:在 <dependencies> 标签内添加 <dependency> 标签,指定依赖的 groupIdartifactIdversion

  • 依赖范围:通过 scope 属性控制依赖在编译、测试、运行时的可见性,如 compiletestruntimeprovided 等。

  • 依赖调解:Maven 自动处理依赖传递和版本冲突。可以使用 <dependencyManagement> 标签集中管理版本。

maven常用插件

  • 在maven中常用插件有以下几个

    • maven-compiler-plugin:编译源代码,设置编译选项(如源码、目标码版本)。
    • maven-surefire-plugin:运行单元测试。
    • maven-jar-plugin:创建 JAR 包。
    • maven-war-plugin:创建 WAR 包。
    • maven-source-plugin:生成源码包。
    • maven-javadoc-plugin:生成 Java 文档。

    • 在pom.xml文件中添加插件

      <build><plugins> 标签内添加 <plugin> 标签,配置插件 ID、版本和目标(goal)。

maven常用命令:

  • 清理mvn clean 删除 target 目录下的编译结果、打包产物等。

  • 编译mvn compile 编译源代码,生成 .class 文件。

  • 测试

    • mvn test 编译并运行测试用例(如 JUnit、TestNG 等)。
    • mvn surefire-report:report 生成测试报告。
  • 打包

    • mvn package 编译、测试并生成最终打包文件(如 .jar.war.ear 等)。
  • 安装mvn install 将打包后的工件安装到本地仓库,供其他项目依赖。

  • 部署:(通常在 CI/CD 流程中)mvn deploy 将工件发布到远程仓库。

在IEAD中打开maven选项卡,可以选择后右键执行以上命令:

在这里插入图片描述

相关文章
|
12天前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
73 26
|
24天前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
36 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
18天前
|
安全 Java 编译器
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
|
18天前
|
Java 开发工具 Android开发
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
|
25天前
|
Java 编译器 Android开发
Kotlin教程笔记(28) -Kotlin 与 Java 混编
Kotlin教程笔记(28) -Kotlin 与 Java 混编
29 2
|
1月前
|
Java 测试技术 Maven
Maven clean 提示文件 java.io.IOException
在使用Maven进行项目打包时,遇到了`Failed to delete`错误,尝试手动删除目标文件也失败,提示`java.io.IOException`。经过分析,发现问题是由于`sys-info.log`文件被其他进程占用。解决方法是关闭IDEA和相关Java进程,清理隐藏的Java进程后重新尝试Maven clean操作。最终问题得以解决。总结:遇到此类问题时,可以通过任务管理器清理相关进程或重启电脑来解决。
|
18天前
|
Java 数据库连接 编译器
Kotlin教程笔记(29) -Kotlin 兼容 Java 遇到的最大的“坑”
Kotlin教程笔记(29) -Kotlin 兼容 Java 遇到的最大的“坑”
34 0
|
1月前
|
安全 Java 编译器
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
|
1月前
|
Java 开发工具 Android开发
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
|
1月前
|
Java 编译器 Android开发
Kotlin教程笔记(28) -Kotlin 与 Java 混编
Kotlin教程笔记(28) -Kotlin 与 Java 混编
下一篇
DataWorks