注意:文章内容比较详细,作为毕业答辩没必要全部记住!!!
标红部门要求记住,标绿部分要求熟悉,其它了解即可。
Maven是一种构建工具,它用于构建、管理和发布Java项目pom.xml文件包含了项目的所有重要信息,
包括项目的依赖、构建插件、版本信息等。
pom.xml文件是Maven项目的核心配置文件,它以XML格式编写。
该文件的主要作用是定义项目的结构、依赖关系和构建过程。它包含了以下信息:
项目坐标:pom.xml文件包含了项目的坐标信息,如groupId(组织或团队的标识符)、artifactId(项目的唯一标识符)和version(项目的版本号)。
依赖管理:你可以在pom.xml中定义项目所依赖的外部库和组件;Maven会根据这些依赖关系自动下载所需的JAR文件,并将它们包括在项目的构建中。
构建配置:pom.xml文件包含了构建插件的配置信息,这些插件用于编译、测试、打包和部署项目;你可以定义构建生命周期阶段和目标,以定制项目的构建过程。
插件配置:除了构建插件,pom.xml还可以包含其他插件的配置信息,例如静态代码分析、代码生成和文档生成插件。
仓库配置:你可以指定Maven仓库的位置,以便Maven能够从仓库中下载依赖项。
项目描述:pom.xml文件通常包含有关项目的描述信息,以便其他开发人员了解项目的用途和功能。
pom.xml的大致文件结构如下:
<?xml version="1.0" encoding="UTF-8"?> <!-- Maven 项目对象模型(POM) 文件的根元素 --> <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 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <!-- POM文件的模型版本 --> <modelVersion>4.0.0</modelVersion> <!-- 项目坐标,包括组织ID,项目ID和版本 --> <groupId>com.example</groupId> <!-- 项目的组织或公司ID --> <artifactId>my-java-app</artifactId> <!-- 项目的唯一ID --> <version>1.0.0</version> <!-- 项目的版本号 --> <packaging>jar</packaging> <!-- 项目打包类型 --> <name>My Maven Project</name> <!-- 项目的名称,可选 --> <!-- 项目的描述 --> <description>This is a sample Maven project.</description> <!-- 项目的URL,可选 --> <url>http://example.com/my-maven-project</url> <!-- 项目依赖声明部分 --> <dependencies> <!-- 对Spring框架核心模块的依赖 --> <dependency> <groupId>org.springframework</groupId> <!-- 依赖的组织或公司ID --> <artifactId>spring-core</artifactId> <!-- 依赖的唯一ID --> <version>5.2.6.RELEASE</version> <!-- 依赖的版本号 --> </dependency> <!-- 其他依赖可以在这里添加 --> </dependencies> <!-- 构建配置部分 --> <build> <plugins> <!-- Maven编译插件的配置 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <!-- 插件的组织或公司ID --> <artifactId>maven-compiler-plugin</artifactId> <!-- 插件的唯一ID --> <version>3.8.1</version> <!-- 插件的版本号 --> <configuration> <source>1.8</source> <!-- Java源代码的兼容版本 --> <target>1.8</target> <!-- Java目标代码的兼容版本 --> </configuration> </plugin> <!-- 其他构建插件可以在这里添加 --> </plugins> </build> <!-- 构建配置 --> <build> <plugins> <!-- Maven插件配置示例 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <!-- 其他构建插件,如maven-surefire-plugin等 --> </plugins> <!-- 资源配置 --> <resources> <!-- 描述存放资源的目录,该路径相对POM路径 --> <resource> <directory>src/main/java</directory> <!-- 包含的模式列表,例如**/*.xml --> <includes> <include>**/*.xml</include> </includes> <!-- 是否使用参数值代替参数名 --> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.*</include> </includes> <filtering>false</filtering> </resource> </resources> </build> <!-- 仓库配置部分 --> <repositories> <!-- Maven中央仓库的配置 --> <repository> <id>central</id> <!-- 仓库的唯一ID --> <url>https://repo.maven.apache.org/maven2</url> <!-- 仓库的URL地址 --> </repository> <!-- 其他仓库可以在这里添加 --> </repositories> </project>