Linux系统-部署-运维系列导航

 


 

maven多环境配置,根据激活环境,只打包对应的配置文件

1.多环境配置

<profiles>
        <profile>
            <id>dev</id>
            <properties>
                <!-- 环境标识,需要与配置文件的名称相对应 -->
                <profiles.active>dev</profiles.active>
                <logging.level>debug</logging.level>
                <endpoints.include>'*'</endpoints.include>
            </properties>
            <activation>
                <!-- 默认环境 -->
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>test</id>
            <properties>
                <profiles.active>test</profiles.active>
                <logging.level>debug</logging.level>
                <endpoints.include>*</endpoints.include>
            </properties>
        </profile>
        <profile>
            <id>prod</id>
            <properties>
                <profiles.active>prod</profiles.active>
                <logging.level>warn</logging.level>
                <endpoints.include>health, info, logfile</endpoints.include>
            </properties>
        </profile>
    </profiles>

 

2.打包激活环境的配置文件

<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.yml</include>
                 <!--根据maven选择环境导入配置文件-->
                <include>application-${spring.profiles.active}.yml</include>
            </includes>
        </resource>
    </resources>
 
 
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>${spring-boot.version}</version>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

 


 

mvn控制台指令,自动打包依赖或被依赖模块

mvn clean install -Dmaven.test.skip=true -pl admin -am

-pl 本次打包的项目列表,如果不指定,则处理当前目录pom文件的所有模块
-am 同时打包 本此项目依赖  的项目
-amd 同时打包 依赖本次项目 的项目

 

posted on 2024-07-02 21:08  xiaoyaozhe  阅读(5)  评论(0编辑  收藏  举报