• maven 环境隔离


    环境隔离

    目前只有一个配置文件,但是不方便未来的自动化部署

    方案

    新增application-dev.ymlapplication-prod.yml
    隔离成开发环境生产环境

    过程

    首先确保src/main/resources目录是有application.yml

    src/main/resources新建application-dev.ymlapplication-prod.yml

    • application-dev.yml
    # 开发环境
    spring:
        jpa:
            show-sql: true
    
    • application-prod.yml
    # 生产环境
    spring:
        jpa:
            show-sql: false
    
    • pom.xml
    <dependencies>
        ...
    </dependencies>
    
    <profiles>
      <profile>
        <!--   开发环境   -->
        <id>dev</id>
        <activation>
          <!-- 表示如果编译时没有指定环境,则以该环境为默认环境 -->
          <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
          <!--使用${environment}获取值-->
          <environment>dev</environment>
        </properties>
      </profile>
      <profile>
        <!--   生产环境   -->
        <id>prod</id>
        <properties>
          <environment>prod</environment>
        </properties>
      </profile>
    </profiles>
    <build>
      <resources>
        <!--排除环境配置文件-->
        <resource>
          <directory>src/main/resources</directory>
          <excludes>
            <exclude>application-*.yml</exclude>
          </excludes>
        </resource>
    
        <resource>
          <directory>src/main/resources</directory>
          <filtering>true</filtering>
          <!-- 打包时包含的文件 -->
          <includes>
            <include>application-${environment}.yml</include>
          </includes>
        </resource>
      </resources>
      ...
    </build>
    

    编译打包命令

    mvn clean package -Dmaven.test.skip=true -Pdev   # 开发环境的打包命令
    mvn clean package -Dmaven.test.skip=true -Pprod  # 生产环境的打包命令
    

    运行命令

    java -jar bookstore-v0.1.jar --spring.profiles.active=dev  # 开发环境运行
    java -jar bookstore-v0.1.jar --spring.profiles.active=prod # 生产环境运行
    

    idea上配置

    Environment variables 设置为--spring.profiles.active=dev

    并且Active profiles 设置为dev

  • 相关阅读:
    hdu 1254 推箱子(双重bfs)
    hdu 1495 非常可乐 (广搜)
    [leetcode-687-Longest Univalue Path]
    [leetcode-686-Repeated String Match]
    POJ 2287 田忌赛马 贪心算法
    [leetcode-304-Range Sum Query 2D
    [leetcode-682-Baseball Game]
    [leetcode-299-Bulls and Cows]
    [leetcode-319-Bulb Switcher]
    [leetcode-680-Valid Palindrome II]
  • 原文地址:https://www.cnblogs.com/Draymonder/p/12266034.html
Copyright © 2020-2023  润新知