用Maven的小伙伴都知道,Maven的宗旨是约定优于配置(Convention Over Configuration)。

在宗旨的前提下Maven也提供了个性化定制的Profile,让我们看看使用方法哈!

首先让我们一起看看Maven中的属性,这个用的挺多的:

注:下面属性请在pom文件里使用。项目中使用默认是不支持的须要自己配置。

内置属性: ${basedir}项目根文件夹

${version} 项目版本

Pom属性: ${project.artifactId}

${project.build.sourceDirectory}

${project.build.testSourceDirectory}

${project.build.directory}

${project.outputDirectory}

${project.testOutputDirectory}

${project.groupId}

${project.version}

${project.build.finalName}

自己定义属性:Settings: ${settings.localRepository} 。引用settings.xml文件里的XML元素的值

Java系统属性: ${user.home}

环境变量属性: ${env.JAVA_HOME}

如今我们開始认识Profile。下面是一个简单的Profile结构体:

   <profiles><profile><id>dev</id><properties><db.driver>com.mysql.jdbc.Driver</db.dirver></properties></profile></profiles>

定义一个id为dev、属性db.driver为com.mysql.jdbc.Driver的Profile。

只定义即可了吗?答案是否定的。我们须要激活Profile才干生效,我们能够通过mvn clean install -P dev激活。

(注:dev为激活ID,假设你想激活多个能够mvn clean install -P dev1,dev2使用,假设不想激活某一个用-P!dev1)

以上是一种激活方式,以下我们继续介绍其它激活方式

activeByDefault默认激活:

  <profiles><profile><id>dev</id><properties><db.driver>com.mysql.jdbc.Driver</db.dirver></properties><activation>  <activeByDefault>true</activeByDefault>  </activation>  </profile></profiles>

settings.xml默认激活:

<settings>
...  <activeProfiles>  <activeProfile>dev1</activeProfile>  </activeProfiles>
...
</settings> 

系统属性激活:

  <profiles><profile><id>dev</id><properties><db.driver>com.mysql.jdbc.Driver</db.dirver></properties><activation>  <property>  <name>test</name>  <value>driver</value></property></activation>  </profile></profiles>

注:上面表示test=driver时才激活, mvn clean install -Dtest=driver

系统环境激活:

 <profiles><profile><id>dev</id><properties><db.driver>com.mysql.jdbc.Driver</db.dirver></properties><activation>  <jdk>[1.5,1.8)</jdk><file>   <missing>oracle.properties</missing>   <exists>jdbc.properties</exists>   </file></activation></profile></profiles>

注:上面表示jdk为1.5、1.6和1.7的时候激活

存在jdbc.properties文件情况,不存在oracle.properties文件情况激活

Profile种类等就不介绍了,用处不大。文章够长了,自己都看不下去了。

Maven的个性化定制相关推荐

  1. [附源码]计算机毕业设计JAVA面向服装集群企业的个性化定制服务系统

    [附源码]计算机毕业设计JAVA面向服装集群企业的个性化定制服务系统 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Ec ...

  2. [附源码]SSM计算机毕业设计面向服装集群企业的个性化定制服务系统JAVA

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  3. editor修改样式 vue_vue-quill-editor的使用及个性化定制操作

    最近在用vue + element ui写一个小应用要用到富文本编辑器,以前做项目都一直都用ueditor,但是看了一下它与vue的兼容性并不好,又对比了几个后,选择了vue-quill-editor ...

  4. 汽车行业如何个性化定制转型?看APS系统在这家企业的运用

    传统汽车行业中往往采用的是按库存推动式生产,一旦市场产生变动就会造成大量的生产,给企业带来大批的资金压力,而另一方面采用按单生产的方式企业往往面临供应链,产能的诸多约束条件限制,稍有不慎就会带来产线停 ...

  5. 图表样式无法实现个性化定制?这个ECharts插件解锁多图表样式

    "唉!"公司里负责报表开发的老王叹了口气,满面愁容. "老板想要图表样式可以个性化定制,可FineReport实现不了啊." "公司业务还需要使用象形 ...

  6. 产品三维展示|3D可视化解决方案|产品3D个性化定制案例分享

    看到不少优质的3D展示案例,想跟大家分享一下! 案例一:智慧园区3D可视化 展示整个园区的3D建筑风貌,独栋以及单层楼宇信息,查看消防和电路管道.同时集成展示园区的多功能运行和运维管理系统,对接线下的 ...

  7. 原来早就被安排了,旅行社用机器学习给你推个性化定制游

    大家好,我是为人造的智能操碎了心的智能禅师. 全文大约1700字.读完可能需要好几首下面这首歌的时间 ? 还有两天就是国庆长假了,这两天的天气也是格外的好.上班路过一个大厦,顺手拍了一张? 艳阳高照, ...

  8. hexo中matery主题的个性化定制

    前言 上一篇讲了使用hexo初步搭建了一个个人博客,接下来说一下如何使用matery主题以及如何根据自己的想法进行个性化定制,效果展示金哥哥的个人博客.我会把我踩过的坑以及解决方法一一说明.基础的可以 ...

  9. U盘图标更改 简单三步教你个性化定制U盘图标!自定义修改你的U盘

    U盘图标 教你个性化定制U盘图标! 先看看效果图 一.首先 1. 在U盘的根目录中创建一个TXT文本文件 (U盘的根目录也就是刚打开U盘的那个目录界面) 文档中输入代码: [autorun] ICON ...

最新文章

  1. 李彦宏:汽车工业面临无人驾驶百年变局
  2. SQL 服务器勒索病毒XTBL、dharma、wallet后缀,会在文件名中添加联系的电子邮件地址...
  3. CrowdHuman 测试
  4. 【数字信号处理】相关函数 ( 能量信号 | 能量信号的互相关函数 | 能量信号的自相关函数 )
  5. 【Python】青少年蓝桥杯_每日一题_9.27_输出最大值最小值平均值
  6. 轻松学MVC4.0–2 创建用户列表页面
  7. vmlinux 反汇编_ARM Linux内核驱动异常定位方法分析--反汇编方式
  8. JVM系列之:JIT中的Virtual Call
  9. aspose 换行写_aspose.word 换行符 aspose.words换行符
  10. 一个半月快速、低成本上云,云数据库专属集群解决方案看过来
  11. Verilog HDL组合逻辑与时序逻辑区别
  12. Android系统(274)---如何预置APK
  13. 专用计算机 一级专用计算机芯片,计算机一级考试 2015年模拟题(一)
  14. matlab画图函数之plot【matlab图行绘制一】
  15. Mac电脑怎样网络在线重装系统
  16. 线性代数学习笔记——第六讲——矩阵的转置
  17. 物理层下面的传输媒体
  18. python卷积神经网络训练,python卷积神经网络图像
  19. XXL-Job启动源码详解
  20. 跟涛哥一起学嵌入式 26:深入浅出计算机编码、乱码问题

热门文章

  1. GCC __builtin_expect与kernel指令序列优化
  2. 1.2.4 Selecting a defualt database
  3. c语言编译成功,[C/CPP系列知识] 那些程序C语言可以编译通过但C++无法编译成功 Write a C program that won’t compile in C++...
  4. google us web
  5. Protocol Buffer入门——轻松搭建java环境 .
  6. JDBC query VARRAY on DB level
  7. svg图片在vue脚手架vue-cli怎么使用
  8. An example of using Pandas for regression
  9. 使用 bash 脚本把 AWS EC2 数据备份到 S3
  10. A - Sliding Window POJ - 2823