美文网首页
自带的`profiles`实现分环境打包

自带的`profiles`实现分环境打包

作者: Nisus_Liu | 来源:发表于2018-05-24 23:21 被阅读0次

    assembly虽然功能全, 但体验发现貌似打包的速度稍慢于仅用自带的profiles配置.

    配置

     <profiles>
            <!-- 本地开发环境 -->
            <profile>
                <id>dev</id>
                <build>
                    <resources>
                        <resource>
                            <directory>${profiles.dir}/dev</directory>
                        </resource>
                        <!--<resource>-->
                        <!--<directory>${profiles.dir}/type/3w</directory>-->
                        <!--</resource>-->
                    </resources>
                </build>
                <properties>
                    <env>dev</env>
                </properties>
                <!--默认打包的环境-->  <!--不加默认貌似不能打包进来配置文件, 因为maven不知道该打包进来谁-->
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
            </profile>
    
            <!-- 测试环境 -->
            <profile>
                <id>test</id>
                <build>
                    <resources>
                        <resource>
                            <directory>${profiles.dir}/test</directory>
                        </resource>
                        <!--<resource>-->
                        <!--<directory>${profiles.dir}/type/3w</directory>-->
                        <!--</resource>-->
                    </resources>
                </build>
                <properties>
                    <package.environment>test</package.environment>
                </properties>
    
    
            </profile>
    
            <!-- 生产环境 -->
            <profile>
                <id>prod</id>
                <build>
                    <resources>
                        <resource>
                            <directory>${profiles.dir}/prod</directory>
                        </resource>
                    </resources>
                </build>
    
                <properties>
                    <package.environment>prod</package.environment>
                </properties>
                <!--默认打包的环境-->
                <!--<activation>-->
                <!--<activeByDefault>true</activeByDefault>-->
                <!--</activation>-->
            </profile>
        </profiles>
    

    注意:

    1. 若想使用公共+分环境的模式, 分环境的配置不要放在resources目录下, resources目录留着放公共配置文件.
    2. resources下的配置文件需要手动指定加入classes目录下.
     <!-- 配置maven项目编译插件,即jdk -->
        <build>
            <!--<finalName>${project.artifactId}</finalName>-->
            <finalName>kg-anti-fraud-${project.version}</finalName>
    
    
            <resources>
                <!--
                    java源文件夹指定资源也打包进artifact, 默认是只打包.java的-->
                <resource>
                    <directory>src/main/java</directory>        <!--指定了配置文件所在地-->
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.xml</include>
                        <include>**/*.tld</include>
                    </includes>
                    <filtering>false</filtering>
                </resource>
                <!--resources目录下的配置文件也要打包-->
                <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <!--?排除不了?-->
                </resource>
            </resources>
        </build>
    

    貌似排除功能excludes不好使.

    相关文章

      网友评论

          本文标题:自带的`profiles`实现分环境打包

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