maven中的profile



profile能为一个特殊的环境自定义一个特殊的构建,使得不同环境间构建的可移植性成为可能


profile可以覆盖几乎所有pom.xml中的配置,profiles元素通常是pom.xml的最后一个元素


每个profile必须有一个id,可以通过mvn ... -P<id> 来调用


自动激活profile使用<activation>元素


激活参数可以是activeByDefault,jdk,os,property,file,缺省属性!


外部profile将profiles.xml文件从pom.xml中分离出来更干净


区别于项目profile,setting profile定义在setting.xml中


对于setting profile可以在settings元素中定义激活列表<activeProfiles> <activeProfile>id</> </>


profile可以通过pom.xml,profiles.xml,/.m2/setting.xml,conf/setting.xml四个层次定义


相关的命令mvn help:active-profiles,mvn help:all-profiles


常见环境:
1./.m2/setting.xml中
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<environment.type>dev</environment.type>
</properties>
</profile>


2.pom.xml
<profile>


<id>development</id>


<activation>
<property>
<name>environment.type</name>
<value>dev</value>
</property>
</activation>


<properties>
<database.driverClassName>com.mysql.jdbc.Driver</database.driverClassName>
<database.url>
jdbc:mysql://localhost:3306/app_dev
</database.url>
<database.user>development_user</database.user>
<database.password>development_password</database.password>
</properties>


</profile>


<profile>


<id>production</id>


<activation>


<property>
<name>environment.type</name>
<value>prod</value>
</property>


</activation>


<properties>
<database.driverClassName>com.mysql.jdbc.Driver</database.driverClassName>
<database.url>jdbc:mysql://master01:3306,slave01:3306/app_prod</database.url>
<database.user>prod_user</database.user>
</properties>


</profile>


3.$ mvn install -Denvironment.type=prod
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值