• 使用maven profile 构建不同环境引用不同的值


    需要做的配置如下

    <profiles>
            <profile>
                <id>dev</id>
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
                <build>
                    <filters>
                        <filter>vars/vars.dev.properties</filter>
                    </filters>
                </build>
            </profile>
            <profile>
                <id>sit</id>
                <build>
                    <filters>
                        <filter>vars/vars.sit.properties</filter>
                    </filters>
                </build>
            </profile>
            <profile>
                <id>pre</id>
                <build>
                    <filters>
                        <filter>vars/vars.pre.properties</filter>
                    </filters>
                </build>
            </profile>
            <profile>
                <id>prod</id>
                <build>
                    <filters>
                        <filter>vars/vars.prod.properties</filter>
                    </filters>
                </build>
            </profile>
        </profiles>

    其中vars所在的目录为

    pom文件中一定要有如下的配置 缺一不可

    <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <useDefaultDelimiters>false</useDefaultDelimiters>
                        <delimiters>
                            <delimiter>$[*]</delimiter>
                        </delimiters>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
                
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3.2</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
            </plugins>
            
            <resources>
                <resource>
                    <directory>${basedir}/src/main/resources</directory>
                    <filtering>true</filtering>
                </resource>
            </resources>

    尤其要注意 resources标签,只有包含在resources标签里面的配置文件 里面的${key}才会被替换掉,如果不配resources这种配置文件是不会生效的。

    更多信息可以参考 

    http://www.cnblogs.com/wangyang108/p/6030735.html

    使用替换不仅仅properties文件可以 xml也是可以的 

    这种工具的好处就是log日志的位置可以动态指定了,不同的发版环境配不同的环境变量

    vars.dev.properties文件中有下列变量
    log.path=f:/rdrslogs
    
    log4j.properties中配置如下
    log4j.appender.logfile.File=$[log.path]\logs\rdrs_console_info.log
    
    打包后实际的路径为log4j.appender.logfile.File=f:/rdrslogs\logs\rdrs_console_info.log
  • 相关阅读:
    [NOIp2017] 列队
    [CQOI2009] 中位数
    [洛谷P1419] 寻找段落
    [HNOI2001] 产品加工
    [洛谷P1842] 奶牛玩杂技
    [SCOI2006] 数字立方体
    [LOJ10121] 与众不同
    [USACO10MAR] 伟大的奶牛聚集
    [HAOI2010] 软件安装
    [洛谷P1357] 花园
  • 原文地址:https://www.cnblogs.com/juniorMa/p/7280207.html
Copyright © 2020-2023  润新知