在开发过程中,我们的软件会面对不同的运行环境,比如开发环境、测试环境、生产环境,而我们的软件在不同的环境中,有的配置可能会不一样,比如数据源配置、日志文件配置、以及一些软件运行过程中的基本配置,那每次我们将软件部署到不同的环境时,都需要修改相应的配置文件,这样来回修改,是个很麻烦的事情。有没有一种方法能够让我们不用修改配置就能发布到不同的环境中呢?当然有,这就是接下来要做的事。
当然,这里的前提是使用maven做为构建工具。
使用maven来实现多环境的构建可移植性,需要借助maven提供的profile功能,通过不同的环境激活不同的profile来达到构建的可移植性。
1、在src/main/resources/filters,建三个文件:dev.properties、test.properties和prod.properties。
分别放置开发环境、测试环境和生产环境的配置。(假设文件中都设置了jdbc.url属性)
2、新建src/main/resources/conf.properties文件。里面设置
jdbc.url=${jdbc.url}
3、配置pom.xml。配置如下
<profiles> <profile> <!-- 开发环境 --> <id>dev</id> <properties> <env>dev</env> </properties> <activation> <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> <filters> <filter>src/main/resources/filters/${env}.properties</filter> </filters> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <!-- optional --> <includes> <include>**/*.*</include> </includes> <excludes> <exclude>filters/</exclude> </excludes> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.0</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> <configuration> <encoding>${java.encoding}</encoding> </configuration> </plugin> </plugins> </build>
4、打包。
开发环境包 mvn clean install -Denv=dev mvn clean install 测试环境包 mvn clean install -Denv=test mvn clean install -Ptest 成产环境包 mvn clean install -Denv=prod mvn clean install -Pprod
相关推荐
主要介绍了使用maven profile指定配置文件打包适用多环境的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
springboot项目框架,多数据源配置,日志,maven多环境打包,集成redis
当前案例中包含一整套的代码和word文档,非常适合新手... 主要是通过maven打包加载不同环境的properties文件 然后将对于的属性绑定到指定的实体对象中;然后通过调用接口可以看到加载不同环境控制台打印的内容是不一样的
工程运行环境有研发,测试和生产,不同的运行环境配置不同,maven 打包时指定文件目录,使用指定的文件夹下的配置文件。
5. 配置 STS-3.3.0.RELEASE中的maven环境 2 6. 创建MAVEN项目 4 7. 配置项目pom.xml 6 8. 编译打包maven项目 9 9. MAVEN 查找类库: 10 10. MAVEN本地jar包初始化 11 11、MAVEN安装到私服(依赖于Maven Nexus配置)...
本资源只提供安装文件,其中maven包是3.6.0版本,用于maven环境配置,离线包用于生成eclipse选项卡中的maven项
主要介绍了Maven根据不同环境打包不同配置文件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
当前案例中包含一整套的代码和word文档,非常适合新手代码简单易懂; 主要是通过maven打包配合springboot application.properties文件配置实现通过打包来完成加载不同环境的配置内容;
myEclipse下配置maven开发环境以及创建maven项目运行打包
工程运行环境有研发,测试和生产,不同的运行环境配置不同,使用maven 占位符,不同环境使用不同的配置
maven安装与配置 安装和配置Maven的步骤如下:12 确保已安装JDK。Maven 3.9+版本需要JDK 8或更高版本。可以通过输入java -version来检查JDK是否安装以及其版本。 下载Maven。访问Maven官网下载最新版本,例如...
Maven搭建spring mvc环境,应用spring3.2.2 jar包, 代码中包含有测试例子、配置文件等,非常好的一个实例。 希望大家喜欢。
intellig-server基于springboot的web服务脚手架内容列表1....接入log4j2,支持多环境配置4.采用assembly打包插件,生成最终发布包5.使用vue前端5.新增linux启动脚本,可根据环境定制(20190824)6.接入netty
1.非web环境下spring如何与mybatis集成 2.maven如何打可以直接运行的jar包 3.maven如何用profile动态打包jdbc.properties 4.maven如何把mybatis的mapper.xml一起打包到jar中
四、配置Eclipse的Maven环境 1. Eclipse Oxygen,打开Window->Preferences->Maven->Installations,右侧点击Add。 2. 设置maven的安装目录,然后Finish 3. 选中刚刚添加的maven,并Apply。 4. 打开Window->...
maven项目、springboot项目使用assembly插件打包,实现项目可配置化、生成系统日志、jar文件与项目分离,并生成windows与linux环境下启动、停止等操作的脚本文件。
flume 1.8所有源代码 编译通过版 附 maven3.5.2 安装包 解压配置maven,利用命令行进行编译,导入eclipse,可用于源代码查看,搭建flume远程测试环境
第10章:使用Maven进行测试/10.8 打包测试代码/10.8.2 插件配置 第10章:使用Maven进行测试/10.8 打包测试代码/10.8.3 执行打包操作 第10章:使用Maven进行测试/10.8 打包测试代码/10.8.4 引用测试jar包 第11章:用...
maven安装与配置 确保已安装JDK。Maven 3.9+版本需要JDK 8或更高版本。可以通过输入java -version来检查JDK是否安装以及其版本。 下载Maven。访问Maven官网下载最新版本,例如3.9.1。对于Windows用户,通常下载...