Maven 最主要的命令有以下四个:
mvn clean compile
mvn clean test
mvn clean package
mvn clean install
使用Maven时关于该Java代码有两点需要注意:首先,在95%以上的情况下,我们应该把项目主代码放到src/main/java/目录下(遵循Maven的约定),而无须额外的配置,Maven会自动搜寻该目录找到项目主代码;其次,该Java类的包名应该与我们之前在POM中定义的groupId和artifactId相吻合。在此基础上分别介绍一下这四个命令。
- mvn clean compile:使用Maven进行编译
clean告诉Maven清理输出目录target/,compile告诉Maven编译项目主代码,从输出中我们看到Maven首先执行了clean:clean任务,删除target/目录,默认情况下Maven构建的所有输出都在target/目录中;接着执行resources:resources任务;最后执行compiler:compile任务,将项目主代码编译至target/classes目录。
- mvn clean test:调用Maven执行测试
在Maven执行测试(test)之前,它会先自动执行项目主资源处理,主代码编译,测试资源处理,测试代码编译等工作,这是 Maven 生命周期的一个特性。测试代码通过编译之后在target/test-classes下生成了二进制文件。
- mvn clean package:打包(package)
Maven会在打包之前执行编译、测试等操作。这里我们看到jar:jar任务负责打包,实际上就是jar插件的jar目标将项目主代码打包成一个jar文件,该文件也位于target/输出目录中,它是根据artifact-version.jar 规则进行命名的,如有需要,我们还可以使用finalName来自定义该文件的名称。
- mvn clean install:让其他的Maven项目直接引用这个jar
该任务将项目输出的jar安装到了Maven本地仓库中,我们可以打开相应的文件夹该项目的pom和jar。只有将该项目的构件安装到本地仓库之后,其他 Maven项目才能使用它。
Maven 这四个命令的执行顺序是这样的:执行test之前是会先执行compile,执行package之前是会先执行test,而类似地,install之前会执行package。
分享到:
相关推荐
**Maven教程:基础篇——尚硅谷学习笔记 2022年** Maven是一个强大的Java项目管理和构建工具,由Apache软件基金会开发。它通过提供一个标准的项目对象模型(Project Object Model,POM)来简化项目的构建过程,并...
《Maven2_基础教程》主要面向初学者,讲解了Maven2的基础知识,如安装与设置、创建新项目、配置POM.xml、执行构建命令等。此外,教程中也提到了Maven仓库的概念,包括本地仓库、中央仓库和私有仓库的使用。 《maven...
本篇文章主要介绍了如何搭建一个基于maven、git、jenkins和tomcat的持续集成环境,适合初学者参考。 首先,我们需要的基础环境是Java开发环境,确保已安装JDK并在环境变量中设置了`JAVA_HOME`,并将`%JAVA_HOME%\...
这是 Maven 最常用的生命周期,用于完成项目的构建过程。它包括以下阶段: - **validate**: 验证项目是否正确,所有必需的信息都已准备好。 - **compile**: 编译项目的源代码。 - **test**: 使用适当的单元测试框架...
在本主题中,我们关注的是一个特定的库——AspectJ Weaver,版本为1.9.6,它是AspectJ框架的核心组件,用于在运行时对Java代码进行编织(weaving)以实现切面编程(Aspect-Oriented Programming, AOP)。现在让我们...
Maven 仓库的目的主要是作为团队内所使用的所有软件构件的内部私有构件仓库,将 Maven 构件(jar 和 pom)存储到一个专门的 Maven 仓库比将它们存储到版本控制系统中更有优势。这是因为构件(jar)是二进制文件,不...
本文将深入探讨一个流行的Java构建工具——Maven,并以"HelloMM"项目为例,引导初学者逐步了解其基本用法。 "Maven初探:一切从HelloMM开始!"这个标题暗示我们将从一个简单的Java项目开始,学习如何使用Maven进行...
**Maven实战——深入理解与应用** Maven是一款强大的Java项目管理工具,它通过XML格式的配置文件,统一管理项目的构建、报告以及依赖关系。在本文中,我们将深入探讨Maven实战中的关键概念,包括安装配置、项目构建...
在完成前端Web开发技术的学习之后,本课程将引领大家进入后端Web开发技术的学习领域,重点聚焦于Java项目的构建工具——Maven。 - **初识Maven** - **定义**:Maven是由Apache基金会维护的一个开源项目,其主要...
在IT行业中,构建高效、可维护的Web应用是至关重要的,而"SSM"框架组合——Spring、SpringMVC和Mybatis,就是一种常见的Java Web开发解决方案。本示例项目"**Eclipse Maven SSM 增删改查示例**"旨在帮助开发者理解和...
SSM框架是Java Web开发中常用的三大框架——Spring、SpringMVC和MyBatis的集成,它们协同工作,提供了一种高效、灵活的后端架构解决方案。本项目名为"MySSMProject",它是一个使用Maven进行项目管理的整合实例,适合...
SSH框架是Java开发中常用的三大框架——Spring、Struts和Hibernate的组合,它们协同工作以构建高效、可维护的Web应用程序。在这个过程中,Maven作为项目管理工具,用于管理和构建项目,而MySQL则是常见的关系型...
Maven是Java开发中的一个项目管理工具,它主要负责项目的构建、依赖管理和项目信息管理。在大型项目中,通常会采用模块化开发,每个模块负责不同的功能,Maven的强大之处就在于它能帮助我们有效地管理和构建这些模块...
在IT行业中,构建、分析和通信是至关重要的环节,而这三个工具——Maven、FindBugs和Protobuf,分别在这些方面发挥着重要作用。这里我们将深入探讨这三个工具及其在软件开发中的应用。 首先,Maven是一款强大的项目...
本文将深入探讨一个开源项目——`environments-maven-plugin-0.0.17.zip`,以及其中包含的`gradle-executable-jar-plugin`,这是一个专门用于创建可执行JAR的Gradle插件。这个插件使得开发者能够轻松地构建一个包含...
这是一个基于Java技术栈的经典组合——SpringMvc、Spring、MyBatis和Maven的项目整合教程。这个项目旨在帮助开发者理解并掌握如何将这些组件有效地集成到一个完整的Web应用程序中。以下将详细介绍这些技术和它们在...
【Maven+Servlet3.0显示系统时间源码+文档】这一资源主要涵盖了两个关键的IT技术:Maven和Servlet3.0。Maven是一个强大的Java项目管理工具,而Servlet3.0是Java服务器端编程的重要组成部分,尤其在构建Web应用程序...
Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和数据持久化...结合这三个强大的工具——Redis、Spring和Maven,开发者可以构建出高效、易于维护的Java应用,并充分利用Redis的高性能数据存储和缓存能力。
《深入理解Maven实战——以"New_MavenDemo"为例》 在软件开发领域,Maven作为Java项目管理和构建工具,扮演着至关重要的角色。它通过一个统一的配置方式,帮助开发者管理项目的依赖、构建过程以及发布流程。本文将...