欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringBoot框架实现切换启动开发环境和测试环境

程序员文章站 2022-06-22 12:12:56
目录springboot框架切换启动开发环境和测试环境目录结构1.在pom.xml文件中添加插件2.添加配置文件application.yml3.添加测试环境的配置文件application-test...

springboot框架切换启动开发环境和测试环境

目录结构

SpringBoot框架实现切换启动开发环境和测试环境

1.在pom.xml文件中添加插件

<profiles>
	 <profile>
        <id>dev</id>
        <activation>
            <activebydefault>true</activebydefault>
        </activation>
        <properties>
            <profileactive>dev</profileactive>
        </properties>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <profileactive>test</profileactive>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <profileactive>prod</profileactive>
        </properties>
    </profile>
</profiles>

<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupid>org.springframework.boot</groupid>
            <artifactid>spring-boot-maven-plugin</artifactid>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

注意:

<activation>
   <activebydefault>true</activebydefault>
</activation>

放在dev下,默认以开发环境启动,如上所示;如果想以测试环境启动,把以上代码剪切到test下即可

2.添加配置文件application.yml

用于后期查看是使用哪种环境启动的项目

SpringBoot框架实现切换启动开发环境和测试环境

3.添加测试环境的配置文件application-test.yml

将数据库、dubbo、redis的开发地址,切换成测试地址即可。

4.将项目打包成jar包的快捷方式

我们将项目打包成jar包,将包含启动文件(bmsapplication)的子项目(scm-bms-starter)进行打包即可

SpringBoot框架实现切换启动开发环境和测试环境

SpringBoot框架实现切换启动开发环境和测试环境

这就是我们想要的jar包

SpringBoot框架实现切换启动开发环境和测试环境

下面我们测试一下,jar包是否可以运行

首先,在cmd中,将目录切换到jar包的存放路径

SpringBoot框架实现切换启动开发环境和测试环境

然后,运行jar包

命令1:java -jar scm-bms-starter-0.0.1-snapshot.jar(windows)

命令2:nohup java -jar scm-bms-starter-0.0.1-snapshot.jar &(linux)

两者的区别:

命令1会将启动过程在控制台输出,当关闭cmd的时候,进程自动被杀死

SpringBoot框架实现切换启动开发环境和测试环境

命令2会在后台启动项目,并将启动过程输入到一个默认的文件中(nohup.out),该进程不会随着控制台的关闭而结束,需要使用kill -15 pid杀死进程

springboot动态切换环境

一般我们在开发中会有 开发、测试、预生产、生产环境的分类,这个时候我们会遇到在项目部署打包的时候需要动态的去切换环境,怎样去实现动态环境的切换呢?好了,废话不多说直接整干货。

1、我们在springboot的pom.xml中添加项目中的环境配置

如图

SpringBoot框架实现切换启动开发环境和测试环境

我们这边先简单介绍三套环境的切换,如图所示,当我们添加三套环境的profile配置之后,我们的第一阶段的任务就完成了,即环境的配置。

2、环境配置完成之后我们有三套环境

我们需要copy出三份application-xxx.properties文件出来,放在springboot默认配置application.properties的同级目录下。主配置文件application.properties只留一个spring.profiles.active=@env@的配置,此处evn这个变量取得上图profile中标签<evn>的值,他的值关系到你copy的三份配置文件xxx的命令,这个地方需要注意。其他的三份application-xxx.properties文件,我们为了测试就只改他们的tomcat的端口号不一样即可大功告成。附图:

主配置文件:

SpringBoot框架实现切换启动开发环境和测试环境

开发环境配置文件:

SpringBoot框架实现切换启动开发环境和测试环境

好了,其他的配置文件就不多加赘述,为了方便看效果只是简单的改了启动的tomcat的端口号。

3、看效果,我们选择开发环境的配置启动,注意看启动信息。附图:

SpringBoot框架实现切换启动开发环境和测试环境

ok,至此,动态切换已完成,朋友们可自行尝试。以上为个人经验,希望能给大家一个参考,也希望大家多多支持。