• SpringBoot下Maven-多环境打包配置详解


    在实际开发过程中,可能需要不断进行环境的切换和打包部署,通常我们会选择在application.properties中修改不同环境对应的配置文件,这种方式不仅效率低,而且很容易发生错误,造成不必要的麻烦降低工作效率。maven提供了多环境配置,可以方便实现不同环境的配置切换和打包。

    多环境打包

    pom.xml文件加上根据环境来打包.为了不把多余的其它环境的配置打到包里面。

    打包命令

    mvn clean package
    mvn clean package -Pdev
    mvn clean package -Ptest
    mvn clean package -Pprod
    
    • 1
    • 2
    • 3
    • 4

    执行命令,指定-P参数,启用指定的profile

    pom.xml文件例子:

    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
      ...
      
      <build>
        <plugins>
          
          <plugin>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-maven-pluginartifactId>
          plugin>
          
          <plugin>
            <groupId>org.apache.maven.pluginsgroupId>
            <artifactId>maven-resources-pluginartifactId>
            <version>3.1.0version> 
            <configuration>
              <propertiesEncoding>UTF-8propertiesEncoding>
            configuration>
         plugin>
        plugins>
        <resources>
          <resource>
            <filtering>truefiltering>
            
            <directory>src/main/resourcesdirectory>
            <includes>
              <include>public/**include>
              <include>static/**include>
              <include>templates/**include>
              <include>tpl/**include>
              <include>application.*include>
              <include>application-${spring.profiles.active}.*include>
              <include>log*-${spring.profiles.active}.xmlinclude>
            includes>
          resource>
        resources>
      build>
    
      <profiles>
        <profile>
          <id>devid>
          <properties>
            <spring.profiles.active>devspring.profiles.active>
          properties>
          <activation>
            <activeByDefault>trueactiveByDefault>
          activation>
        profile>
        <profile>
          <id>testid>
          <properties>
            <spring.profiles.active>testspring.profiles.active>
          properties>
        profile>
        <profile>
          <id>prodid>
          <properties>
            <spring.profiles.active>prodspring.profiles.active>
          properties>
        profile>
      profiles>
    project>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64

    配置阿里云镜像

    为了提升下载速度.

    pom.xml例子:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    
    ...   
      <repositories>  
        <repository>
          <id>nexus-aliyunid>
          <name>nexus-aliyunname>
          <url>http://maven.aliyun.com/nexus/content/groups/public/url>
          <releases>
            <enabled>trueenabled>
          releases>
          <snapshots>
            <enabled>falseenabled>
          snapshots>
        repository>
      repositories>
    ...   
    project> 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    <<<<<<<<<<<< 🏆 >>>>>>>>>>>>

  • 相关阅读:
    mysql外键(foreign key)
    python 之异常处理结构
    外联结的相关知识
    Gogs安装和部署教程-centos上
    ES6展开运算符—— 通俗易懂
    nlp中如何数据增强
    70行代码撸一个桌面自动翻译神器!
    数据导入与预处理-拓展-pandas时间数据处理02
    kubernetes集群之Pod优雅重启
    CentOS部署kvm虚拟化机器
  • 原文地址:https://blog.csdn.net/wjw465150/article/details/126822711