springboot-mavn配置动态环境

初识springboot
目录结构体如下

    application.properties文件内容
         [email protected]@
    application-dev.properties文件内容
         server.port=8001
     application-prod.properties文件内容
         server.port=8003

    以上配置是为了看不同环境下配置不一样

<!--  动态环境配置  -->
<profiles>
    <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <profiles.active>dev</profiles.active>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <profiles.active>prod</profiles.active>
        </properties>
    </profile>
</profiles>

<!--  build 是用于打包时 -->
<build>
    <finalName>mybatis</finalName>
    <!--  此处resources作为全局的静态配置文件 此位置不能随便移动 -->
    <resources>
        <!-- 先指定 src/main/resources下所有文件及文件夹为资源文件 -->
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>*.xml</include>
                <include>*.properties</include>
            </includes>
            <filtering>true</filtering>
        </resource>
    </resources>

    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <executions>
                <execution>
                    <id>default-resources</id>
                    <phase>validate</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>target/classes</outputDirectory>
                        <useDefaultDelimiters>false</useDefaultDelimiters>
                    </configuration>
                </execution>
            </executions>
        </plugin>
        <!-- 单元测试的文件排除 相当于在打包时的 -Dmaven.test.skip=true  -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skip>true</skip>
                <includes>
                    <include>**/Test*.java</include>
                </includes>
                <testFailureIgnore>true</testFailureIgnore>
            </configuration>
        </plugin>
        <plugin>
            <!--绑定到特定的声明周期之后,运行maven-source-pluin 运行目标为jar- -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>jar-no-fork</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

1.标记说遇到的坑
    当只是配置了profiles时是不起作用的,只有增加了对应的resources标签启动打包才有作用。

springboot-mavn配置动态环境

原文地址:https://blog.51cto.com/8999597/2396842

时间: 2024-11-10 20:39:14

springboot-mavn配置动态环境的相关文章

7.springboot配置文件配置运行环境、放置位置

1.properties方式 dev test prod开发 测试 生产环境数据 多Profile文件 默认application.properties 可以切换环境: spring.profiles.active=dev 2.yml方式 yml支持多文档块环境 yaml用---可以把一个文档"拆分"成多个文档 #yaml文档块模式 server: port: 8081 spring: profiles: activemq: dev --- server: port: 8083 spr

springboot项目maven配置多环境

maven配置多环境 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- 配置默认跳过单元测试 结束--> <plugin> <groupId>org.apa

SpringBoot自动配置原理

SpringBoot自动配置主要通过@EnableAutoConfiguration, @Conditional, @EnableConfigurationProperties或者@ConfigurationProperties 等几个注解来进行自动配置完成的. @EnableAutoConfiguration开启自动配置,主要作用就是调用Spring-Core包里的loadFactoryNames(),将autoconfig 包里的已经写好的自动配置加载进来. @Conditional条件注解

SpringBoot和Mycat动态数据源项目整合

SpringBoot项目整合动态数据源(读写分离) 1.配置多个数据源,根据业务需求访问不同的数据,指定对应的策略:增加,删除,修改操作访问对应数据,查询访问对应数据,不同数据库做好的数据一致性的处理.由于此方法相对易懂,简单,不做过多介绍. 2. 动态切换数据源,根据配置的文件,业务动态切换访问的数据库:此方案通过Spring的AOP,AspactJ来实现动态织入,通过编程继承实现Spring中的AbstractRoutingDataSource,来实现数据库访问的动态切换,不仅可以方便扩展,

网路配置动态路由

网络配置动态路由 介绍: 动态路由协议通过路由信息的交换生成并维护转发引擎所需的路由表.当网络拓扑结构改变时动态路由协议可以自动更新路由表,并负责决定数据传输最佳路径. 在动态路由中,管理员不再需要与静态路由一样,手工对路由器上的路由表进行维护,而是在每台路由器上运行一个路由协议.这个路由协议会根据路由器上的接口的配置(如IP地址的配置)及所连接的链路的状态,生成路由表中的路由表项. 一.实验拓扑图: 二.实验目标: 实战:使用网络配置动态路由. 三.实验环境: 路由器 接口 ip地址 R1 e

配置java环境变量,实现一条命令自由切java7 或java8

在多个java编译环境中,有时需要java 7,有时又需要java 8,怎么配置java 环境,可以快速自动切换呢?下面用mac演示在 /etc/bashrc 中配置的环境变量 1 # 设置 JDK 7 2 export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7` 3 # 设置 JDK 8 4 export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8` 5 6 #默认JDK 6 7 export JAVA_HO

配置编译环境

在我们工作中,经常会遇到需要搭建编译环境的事情,本身这是一件很简单的事情, 但是在实际的操作中却会遇到很多的问题,比如说环境搭建好了,却不能起作用, 或者提示缺少了什么动态库: 搭建环境需要注意的地方: 1. 一般搭建编译环境都是解压某以特定的工具包,我习惯上把着这些工具包放置在/opt目录下, 然后tar -zxvf ***.tar.gz ./ 然后查找这些文件下的bin文件,将这些bin文件的路径加入到环境变量中,也就是~/.bashrc 文件中,添加完环境变量以后一定要执行一遍source

使用Gradle与Ant实现可配置不同环境的自动打包

一.搭建jenkins环境和配置gradle环境 ??网上搭建jenkins的教程很多,这里不再赘述,主要说下jenkins中配置gradle环境 ??点击"Manage Jenkins" ????1. 在"Manage Plugins"中搜索并安装gradle插件 ????2. 在"Configure System"中配置指向你电脑中gradle所在路径(这步前当然要下载gradle) ???? 二.新建jenkins项目并设置构建gradle

WampSever配置本地环境,解决打开打开本地网站问题

WampServer是一款由法国人开发的Apache Web服务器.PHP解释器以及MySQL数据库的整合软件包.免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发. 直接点击本地的.html是静态加载的,需要动态加载的文件是无法被加载的.会出现如下情况. 于是选用了Wamp搭本地服务器浏览网站,这样就能成功加载动态文件了. 在此分享下配置WampSever时碰到的问题和解决的方法: 服务器是否已正常运行 如果能登上则表示服务器能够正常运行.(在地址栏中输入localhost