Maven多环境配置

多数项目都会有开发环境、测试环境、生产环境,各个环境配置可能都会不一样,于是在构建时,会涉及到环境配置的切换。来回手工修改配置,效率低下,容易出错。可以配置多个含有不同环境配置的Profile,在构建时指定构建环境,达到多环境下快速灵活构建的目的。

项目结构:

config.properties:

jdbc_driver_class=${jdbc.driver.class}
jdbc_connection_url=${jdbc.connection.url}
jdbc_username=${jdbc.username}
jdbc_password=${jdbc.password}

prop下的dev.properties、test.properties、prod.properties分别对应开发、测试、生产环境的配置。

dev.properties:

jdbc.driver.class=com.mysql.jdbc.Driver
jdbc.connection.url=jdbc:mysql://localhost:3306/mydb
jdbc.username=dev_user
jdbc.password=123456

test.properties:

jdbc.driver.class=com.mysql.jdbc.Driver
jdbc.connection.url=jdbc:mysql://192.168.1.25:3306/mydb
jdbc.username=test_user
jdbc.password=123456

prod.properties:

jdbc.driver.class=com.mysql.jdbc.Driver
jdbc.connection.url=jdbc:mysql://www.nocoffee.com:3306/mydb
jdbc.username=prod_user
jdbc.password=123456

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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.coffee</groupId>
  <artifactId>coffee-xw</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>

    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <!-- 自定义属性env,在不同环境有不同的值 -->
                <env>dev</env>
            </properties>
            <activation>
                <!-- 默认激活dev环境的配置 -->
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>

        <profile>
            <id>test</id>
            <properties>
                <env>test</env>
            </properties>
        </profile>

        <profile>
            <id>prod</id>
            <properties>
                <env>prod</env>
            </properties>
        </profile>
    </profiles>

    <build>
        <!-- 指定filter,根据最终profile下的env属性获取对应的配置文件 -->
        <filters>
            <filter>src/main/prop/${env}.properties</filter>
        </filters>

        <!-- 开启资源过滤,让Maven能解析资源文件中的Maven属性 -->
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>
</project>

构建

构建时,指定参数-P加上profile的id来激活对应的profile。也可以通过指定默认激活的profile。
如上,显示的激活dev环境的profile,执行mvn clean install 时,编译后的config.properties内容为:

jdbc_driver_class=com.mysql.jdbc.Driver
jdbc_connection_url=jdbc:mysql://localhost:3306/mydb
jdbc_username=dev_user
jdbc_password=123456

执行 mvn clean install -Pprod 时,编译后的config.properties内容为:

jdbc_driver_class=com.mysql.jdbc.Driver
jdbc_connection_url=jdbc:mysql://www.nocoffee.com:3306/mydb
jdbc_username=prod_user
jdbc_password=123456

原文地址:https://www.cnblogs.com/seve/p/10976410.html

时间: 2024-08-30 14:17:53

Maven多环境配置的相关文章

maven(六),外置maven运行环境配置

外置maven eclipse内置的maven插件是固定版本,如果要用其他版本的maven,可以使用外置maven 下载地址: http://maven.apache.org/download.cgi   window系统下载 apache-maven-3.3.9-bin.zip, 解压 进入eclipse首选项--maven--installations--add--选择刚解压的maven目录--完成 如图第一行是eclipse内置maven3.3.3版本,第三行是我们刚刚添加的3.3.9版本

Maven的环境配置

一.准备材料及环境 Maven:Maven 3.5.3  JDK:C:\Program Files\Java\jdk1.8.0_171 二.下载地址: Maven:http://maven.apache.org/download.cgi 三.环境变量设置 此处Java环境设置将省略. maven配置: 1.解压下载的Maven至指定路径,如:D:\Maven\apache-maven-3.5.0 注意bin文件夹的位置在apache-maven-3.5.0下面. 2.设置MAVEN_PATH 3

Maven多环境配置实战 filter

目前在开发一个wap项目,主要有开发.测试和最终部署上线几个阶段,每个阶段对配置(数据库.日志)都有不同的设置.以前都是以开发环境为主,在测试和部署上线时由部署工程师负责修改配置并上线.但是公司并非都有一个项目,我们也不是只负责一个项目,这样的工作方式导致每每上线时大家都心惊胆颤,实在忍受不了折磨,决定研究下maven下如何解决这个问题.找到方案后,不敢独享,将结果向大家介绍下.思路:     几个环境中主要的不同可以概括为数据库配置和log日志路径配置以及外部依赖的接口配置不一样,但是我们这里

eclipse+maven的环境配置

软件152唐伟 1.1准备以下压缩包 1.JDK1.7 文件:jdk1.7.rar 2. eclipse-jee-mars-2 文件:32位系统准备eclipse-jee-mars-2-win32.zip,64位系统准备eclipse-jee-mars-2-win32-x86_64.zip 3.maven 文件:maven-3.3.9.rar 4.maven仓库(可以从网上下载,但是速度慢) 文件:.m2.rar 1.2安装(解压) 1.选择一个工作盘,如E:盘,建立目录jee 2. 将压缩包放

Eclipse+Tomcat+MAVEN开发环境配置

https://blog.csdn.net/zhshulin/article/details/30779873 补充: 1.eclipse配置tomcat window--preferences--server--runtime  environment--Add, 我下载的tomcat放在C:\Program Files\Apache\apache-tomcat-9.0.12,这里选择Apache Tomcat v9.0, browse选择tomcat安装路径C:\Program Files\

Java-Maven(四):Eclipse集成Maven环境配置

一般maven都需要集成到IDE上使用的,而不是单独的使用,常见的maven可集成IDE:eclipse.IntelliJ IDEA.但这里就只学习eclipse集成maven的基础上,进行maven环境配置. eclipse的maven插件安装: 大多情况来说下载eclipse都默认已经集成了maven插件,验证是否集成eclipse菜单Window->Preferences 如果实在不行,可以在eclipse marketplace中查找maven,找到与当前eclipse版本一致的插件直接

Maven环境配置

1.安装maven核心程序 没有下载Maven的同学可以去官网下载我这里用的是3.2.2版本的maven 1)检查java环境变量的配置 新建系统变量: 变量名:JAVA_HOME 变量值:D:\Program Files\jdk1.7.0_79 x64 (JDK的安装目录) 2)Maven必须放在一个非中文无空格的环境中 我的是:D:\apache-maven-3.2.2 3)配置Maven的环境变量 新建系统变量: 变量名:M2_HOME 变量值:D:\apache-maven-3.2.2(

Maven详解及其环境配置

Maven详解 一.前言     以前做过的项目中,没有真正的使用过Maven,只知道其名声很大,其作用是用来管理jar 包的.最近一段时间在项目过程中使用Maven,用Maven构建的web项目,其项目结构只停留在了解阶段,没有深入的使用与理解,刚好最近看了一篇关于Maven的详解:就开始深入学习一下Maven的具体应用. 二.Maven的作用 在开发中,为了保证编译通过,我们会到处去寻找jar包,当编译通过了,运行的时候,却发现"ClassNotFoundException",我们

(二)Maven的安装与环境配置

想要安装 Apache Maven在Windows 系统上, 需要下载 Maven 的 zip 文件,并将其解压到你想安装的目录,并配置 Windows 环境变量. 所需工具 : 1.JDK 2.Maven 3.Windows 7 注 Maven 3.2 要求 JDK 1.6 或以上版本, 而 Maven 3.0/3.1 需要 JDK 1.5 或以上. 1.JDK 和 JAVA_HOME 确保已安装JDK,并 将"JAVA_HOME" 变量已加入到 Windows 环境变量中. JDK