美文网首页
SpringBoot基于Maven多环境yml配置文件

SpringBoot基于Maven多环境yml配置文件

作者: 叫我null | 来源:发表于2019-06-10 15:25 被阅读0次

    1、pom.xml maven配置

    <properties>
        <java.version>1.8</java.version>
    </properties>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.1</version>
                    <configuration>
                        <source>${java.version}</source>
                        <target>${java.version}</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <fork>true</fork>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <delimiters>
                            <delimiter>@</delimiter>
                        </delimiters>
                        <useDefaultDelimiters>false</useDefaultDelimiters>
                    </configuration>
                </plugin>
            </plugins>
            <resources>
                <resource>
                    <directory>src/main/webapp</directory>
                </resource>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
        </build>
    
        <profiles>
            <profile>
                <id>local</id>
                <properties>
                    <spring.active>local</spring.active>
                </properties>
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
            </profile>
            <profile>
                <id>prod</id>
                <properties>
                    <spring.active>prod</spring.active>
                </properties>
            </profile>
        </profiles>
    

    2、application.yml 配置文件

    custom:
      weather-api: https://restapi.amap.com/v3/weather/weatherInfo
      weather-key: c74ce7c9a4d0695ce2adddda52562d400b
      
    spring:
      profiles:
        active: @spring.active@
      mvc:
        static-path-pattern: /static/**
        view:
          prefix: /WEB-INF/view
      devtools:
        restart:
          enabled: false
          additional-paths: src/main/java
          exclude: static/**,WEB-INF/view/**
      servlet:
        multipart:
          max-request-size: 100MB
          max-file-size: 100MB
          
    ---
    server:
      port: 8088
    spring:
      profiles: local
      datasource:
        url: jdbc:mysql://192.168.56.3:3306/test?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
        username: root
        password: 123
        filters: wall,mergeStat
        
        
    ---
    server:
      port: 8080
    spring:
      profiles: prod
      datasource:
        url: jdbc:mysql://127.0.0.1:3306/test?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
        username: root
        password: 123qwe
        filters: wall,mergeStat
    

    3、调试与发布
    由于pom指定了默认local配置(activeByDefault ),所以启动的是可以从控制台输出


    TIM截图20190610152853.jpg

    发布的时候可以通过命令编译jar包

    mvn clean package -Dmaven.test.skip=true -P prod
    

    打开生产的jar包中的yml文件可以看见,现在活动配置已经是prod

    spring:
      profiles:
        active: prod
    

    4、jenkins中生产环境配置
    Build:pom.xml
    Goals and options:clean package -Dmaven.test.skip=true -P prod

    相关文章

      网友评论

          本文标题:SpringBoot基于Maven多环境yml配置文件

          本文链接:https://www.haomeiwen.com/subject/iruzxctx.html