Maven 构建配置文件

简介: Maven的构建配置文件在`pom.xml`和`settings.xml`中定义,用于定制不同环境(如开发、测试、生产)的构建。配置文件有项目级、用户级和全局级三种,通过命令行、设置或环境变量激活。示例中,`env.properties`、`.test`和`.prod.properties`用于模拟配置选择,当构建配置为`prod`时,项目读取`env.prod.properties`。AntRun插件常用于绑定生命周期阶段执行任务,但与配置文件的核心功能分开。

Maven 构建配置文件

构建配置文件是一系列的配置项的值,可以用来设置或者覆盖 Maven 构建默认值。

使用构建配置文件,你可以为不同的环境,比如说生产环境(Production)和开发(Development)环境,定制构建方式。

配置文件在 pom.xml 文件中使用 activeProfiles 或者 profiles 元素指定,并且可以通过各种方式触发。配置文件在构建时修改 POM,并且用来给参数设定不同的目标环境(比如说,开发(Development)、测试(Testing)和生产环境(Production)中数据库服务器的地址)。

构建配置文件的类型
构建配置文件大体上有三种类型:

类型 在哪定义
项目级(Per Project) 定义在项目的POM文件pom.xml中
用户级 (Per User) 定义在Maven的设置xml文件中 (%USER_HOME%/.m2/settings.xml)
全局(Global) 定义在 Maven 全局的设置 xml 文件中 (%M2_HOME%/conf/settings.xml)
配置文件激活
Maven的构建配置文件可以通过多种方式激活。

使用命令控制台输入显式激活。
通过 maven 设置。
基于环境变量(用户或者系统变量)。
操作系统设置(比如说,Windows系列)。
文件的存在或者缺失。
配置文件激活实例

其中在src/main/resources文件夹下有三个用于测试文件:

文件名 描述
env.properties 如果未指定配置文件时默认使用的配置。
env.test.properties 当测试配置文件使用时的测试配置。
env.prod.properties 当生产配置文件使用时的生产配置。
注意:这三个配置文件并不是代表构建配置文件的功能,而是用于本次测试的目的;比如,我指定了构建配置文件为 prod 时,项目就使用 env.prod.properties文件。

注意:下面的例子仍然是使用 AntRun 插件,因为此插件能绑定 Maven 生命周期阶段,并通过 Ant 的标签不用编写一点代码即可输出信息、复制文件等,经此而已。其余的与本次构建配置文件无关。

相关文章
|
4天前
|
存储 安全 Java
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
14 4
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
|
4天前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven的构建生命周期包括Clean(clean)、Default(validate, compile, test, package, verify, install, deploy)和Site(site, deploy-site)三个阶段。Default生命周期用于验证、编译、测试、打包、检查、安装和部署项目。插件目标如dependency:copy-dependencies可在阶段间操作。例如,`mvn clean dependency:copy-dependencies package`先清理、复制依赖,再打包。
|
21小时前
|
Java 测试技术 Maven
Maven 构建生命周期
Maven生命周期包括Clean(clean)、Default(validate, compile, test, package, verify, install, deploy)和Site(site, deploy-site)。Clean清除编译输出,Default处理验证、编译、测试、打包、检查、安装和部署,Site生成项目文档。阶段按序执行,插件目标如dependency:copy-dependencies可独立调用。例如,`mvn clean dependency:copy-dependencies package`先执行清理,然后复制依赖,最后打包。
|
21小时前
|
Java Maven
Maven 自动化构建
**Maven自动化构建确保依赖稳定性**:当`bus-core-api`构建完成后,`app-web-ui`和`app-desktop-ui`这两个依赖它的项目自动构建。`app-web-ui`引用`bus-core-api`的1.0-SNAPSHOT,同样`app-desktop-ui`也依赖相同的版本。
|
22小时前
|
XML Java Maven
Maven 构建配置文件
Maven构建配置文件用于定制构建,默认值可通过pom.xml中的profiles或activeProfiles调整,适应不同环境如生产和开发。配置文件分项目级、用户级和全局级。激活方式包括命令行、Maven设置、环境变量、操作系统设置及文件存在。示例中,env.properties为基础配置,env.test.properties和env.prod.properties对应测试和生产环境。AntRun插件常用于生命周期绑定,但与配置文件功能本身无关。
|
1天前
|
Java 测试技术 Maven
Maven打包使用多线程加速构建过程
Maven打包使用多线程加速构建过程
15 0
|
2天前
|
Java Maven
Maven 自动化构建
Maven自动化构建确保项目依赖稳定性。当`bus-core-api`构建完成后,`app-web-ui`和`app-desktop-ui`自动构建。两者依赖`bus-core-api`的1.0-SNAPSHOT版本。
|
2天前
|
Java 测试技术 项目管理
Maven 构建生命周期
Maven生命周期包括Clean(clean)、Default(validate, compile, test, package, verify, install, deploy)和Site(site, deploy-site),管理项目构建、测试、打包、验证、安装与部署。Clean清除编译输出,Default执行从验证到部署的全过程,Site生成并发布项目文档。每个阶段按顺序执行,简化项目管理。
|
3天前
|
Java Maven
Maven自用配置文件(settings.xml)
Maven自用配置文件(settings.xml)
12 0
|
9天前
|
Java Apache Maven
Maven 项目文档
在`C:/MVN/consumerBanking`中创建Maven Java项目,使用命令`mvn archetype:generate`生成基础结构。确保`pom.xml`包含`maven-site-plugin`和`maven-project-info-reports-plugin`,版本至少为3.3和2.7,以避免`NoClassDefFoundError`。运行`mvn site`生成文档。