Maven构建配置文件是一组配置值允许我们使用不同的配置构建我们的项目。
我们可以使用Maven build profile来设置或覆盖Maven build的默认值。
我们可以使用构建配置文件来为不同的环境定制构建例如生产vs测试环境。
我们可以为其设置不同的数据库连接URL测试和生产环境。
在pom.xml文件中使用其指定配置文件 profiles
元素,并以各种方式触发。
<project ... <modelVersion>4.0.0</modelVersion> <groupId>com.company.fee</groupId> <artifactId>fee-calculation</artifactId> <version>1.0.0</version> <profiles> <profile> <id>test</id> <activation>...</activation> <build>...</build> <modules>...</modules> <repositories>...</repositories> <pluginRepositories>...</pluginRepositories> <dependencies>...</dependencies> <reporting>...</reporting> <dependencyManagement>...</dependencyManagement> <distributionManagement>...</distributionManagement> </profile> </profiles> </project>
当在构建配置文件下执行时,构建配置文件将覆盖POM文件中的设置。
profile
元素内的元素在POM中进一步覆盖值。
元素内的 activation
元素描述触发要使用的构建配置文件的条件。
选择配置文件的一种方法是在settings.xml文件中。我们可以在那里设置活动配置文件。
另一种方法是添加 -P profile-name
到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"> ... <profiles> <profile> <id>test</id> <activation> <activeByDefault>false</activeByDefault> <jdk>1.8</jdk> <os> <name>Windows XP</name> <family>Windows</family> <arch>x86</arch> <version>5.1.2600</version> </os> <property> <name>your-type</name> <value>yourValue</value> </property> <file> <exists>${basedir}/file2.properties</exists> <missing>${basedir}/file1.properties</missing> </file> </activation> ... </profile> </profiles> </project>
当满足一个或多个指定的标准时发生激活。
当遇到第一肯定条件时,处理停止并且该配置文件被标记为活动。
项目 | 描述 |
---|---|
jdk | 激活在jdk元素中具有内置的,以Java为中心的检查。 如果测试在jdk版本号下运行,这将激活配置文件 匹配给定的前缀。 |
os | os元素可以定义某些操作系统特定的属性。 |
property | 如果Maven检测到对应的name = value对的属性,配置文件将激活。 |
file | 给定的文件名可以通过文件的存在或者如果它丢失来激活配置文件。 |
当遇到第一肯定条件时,处理停止并且该配置文件被标记为活动。...
mvn help:active-profiles
创建目录有一个常见的情况是,多个任务都依赖于某个目录的存在。当然,你可以在这些任务的开始加入 mkdir 来解决这个问题。但这...
常用设置如上图 Gif 所示,即使我们项目没有使用版本控制功能,IntelliJ IDEA 也给我们提供了本地文件历史记录。除了简单的记录...
Eclipse 工作空间(Workspace)eclipse 工作空间包含以下资源:项目 文件 文件夹项目启动时一般可以设置工作空间,你可以将其设置...
Redis Hexists 命令Redis 哈希(Hash) Redis Hexists 命令用于查看哈希表的指定字段是否存在。语法 redis Hexists 命令基本语法如...
视图column_options包含为当前数据库中外部表列定义的所有选项。只有当前用户能够访问(作为拥有者或具有某些特权)的那些外部表...