maven可以有几个配置文件(maven多环境配置总结)

由于默认的中央仓库,服务器在国外,下载速度很慢,但我们可以使用阿里的中央仓库,亲测速度超快我们只需在maven根目录下的conf文件夹中的setting.xml文件的mirrors节点,添加内容如下:,我来为大家科普一下关于maven可以有几个配置文件?以下内容希望对你有帮助!

maven可以有几个配置文件(maven多环境配置总结)

maven可以有几个配置文件

阿里中央仓库

由于默认的中央仓库,服务器在国外,下载速度很慢,但我们可以使用阿里的中央仓库,亲测速度超快。我们只需在maven根目录下的conf文件夹中的setting.xml文件的mirrors节点,添加内容如下:

<mirror> <id>alimaven</id> <name>aliyun maven</name>   <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>

maven多环境

maven借助profile实现多环境,通过不同的环境激活不同的profile来达到构建的可移植性。笔者有两个环境dev、test,项目目录结构:

如上图,在项目根路径新建目录filters/dev、filters/test,并在dev、test分别新建文件config.properties文件;

1、配置config.properties文件

dev下的config.properties:

env=dev

test下的config.properties:

env=test

在src/resources/config新建文件config.properties,内容为:

env=${env}

${}中的名称必须是env不能是env1或者其它。

2、配置resources

<resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>**/*.xml</include> <include>**/*.properties</include> </includes> </resource>

通过指定filtering表示includes节点配置的文件都将通过maven的过滤进行变量值的替换。

3、配置filter

<profiles> <profile> <id>dev</id> <activation> <activeByDefault>true</activeByDefault> </activation> <build> <filters> <filter>${basedir}/filters/dev/config.properties</filter> </filters> </build> </profile> <profile> <id>test</id> <build> <filters> <filter>${basedir}/filters/dev/config.properties</filter> </filters> </build> </profile> </profiles>

通过filter,我们可以将不同环境目录下的config.properties文件中的参数值加载到maven中,如果filters中可以添加有多个filter,即可以添加多个properties文件。

4、通过命令进行打包

mvn clean compile -Pdev

通过-P指定打包环境,如果不指定则打包的环境默认是dev

5、扩展

除了filters定义多环境,我们还可以通过节点properties定义不同环境的变量,我们使用如下方法可以定义env:

<profiles> <profile> <id>dev</id> <properties> <env>dev</env> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <env>test</env> </properties> </profile> </profiles>

但filters与properties也可以一起使用,定义不同的变量。

如果写的好,请大家点赞、关注、评论。

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页