• 强烈建议把 Maven 的 settings.xml 文件同时放在:%USER_HOME%/.m2/settings.xml 和${maven.home}/conf/settings.xml 两个地方。避免使用终端的时候默认去调用用户目录下的。

【idea侧边栏上Maven的Profile怎么用的】

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/maven-skill-introduce.html

更多 只使用阿里云仓库的setting.xml配置、使用nexus私有仓库+阿里云仓库的settings.xml配置。(自己日常是用阿里云镜像。)

【profile】为了解决不同环境所需的不同变量、配置等问题。

  • profile 一般可以在三个地方:settings.xml(仓库),pom.xml(dev和prod),profiles.xml(这个不常用)

在 settings.xml 上,一般大家用来做仓库的选择,设置全局的 profile,一个是 nexus 仓库,一个是 aliyun 仓库,默认激活的是 nexus 仓库。(activeProfiles)

  1. <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  4.  
  5. <localRepository>D:\maven\my_local_repository</localRepository>
  6.  
  7. <pluginGroups>
  8. </pluginGroups>
  9.  
  10. <proxies>
  11. </proxies>
  12.  
  13. <profiles>
  14. <profile>
  15. <id>nexus</id>
  16. <repositories>
  17. <repository>
  18. <id>nexus</id>
  19. <url>http://192.168.1.73:8081/repository/maven-public/</url>
  20. <releases>
  21. <enabled>true</enabled>
  22. </releases>
  23. <snapshots>
  24. <enabled>true</enabled>
  25. </snapshots>
  26. </repository>
  27. </repositories>
  28. <pluginRepositories>
  29. <pluginRepository>
  30. <id>nexus</id>
  31. <url>http://192.168.1.73:8081/repository/maven-public/</url>
  32. <releases>
  33. <enabled>true</enabled>
  34. </releases>
  35. <snapshots>
  36. <enabled>true</enabled>
  37. </snapshots>
  38. </pluginRepository>
  39. </pluginRepositories>
  40. </profile>
  41. <profile>
  42. <id>aliyun</id>
  43. <repositories>
  44. <repository>
  45. <id>aliyun</id>
  46. <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  47. <releases>
  48. <enabled>true</enabled>
  49. </releases>
  50. <snapshots>
  51. <enabled>true</enabled>
  52. </snapshots>
  53. </repository>
  54. </repositories>
  55. <pluginRepositories>
  56. <pluginRepository>
  57. <id>aliyun</id>
  58. <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  59. <releases>
  60. <enabled>true</enabled>
  61. </releases>
  62. <snapshots>
  63. <enabled>true</enabled>
  64. </snapshots>
  65. </pluginRepository>
  66. </pluginRepositories>
  67. </profile>
  68. </profiles>
  69.  
  70. <activeProfiles>
  71. <activeProfile>nexus</activeProfile>
  72. </activeProfiles>
  73.  
  74. </settings>

在 pom.xml 中,一般用来激活环境配置(打包的时候,默认是 dev 模式,打包 src/main/env/dev 下的配置文件,如果选择 product 则打包 src/main/env/product 下的配置文件)

  1. <profiles>
  2. <profile>
  3. <id>dev</id>
  4. <properties>
  5. <package.environment>dev</package.environment>
  6. </properties>
  7. <activation>
  8. <activeByDefault>true</activeByDefault>
  9. </activation>
  10. <build>
  11. <resources>
  12. <resource>
  13. <directory>src/main/resources</directory>
  14. <includes>
  15. <include>**/*</include>
  16. </includes>
  17. <filtering>true</filtering>
  18. </resource>
  19. <resource>
  20. <directory>src/main/env/${package.environment}</directory>
  21. <includes>
  22. <include>**/*</include>
  23. </includes>
  24. <filtering>true</filtering>
  25. </resource>
  26. </resources>
  27. <finalName>${project.artifactId}</finalName>
  28. </build>
  29. </profile>
  30. <profile>
  31. <id>product</id>
  32. <properties>
  33. <package.environment>product</package.environment>
  34. </properties>
  35. <activation>
  36. <activeByDefault>false</activeByDefault>
  37. </activation>
  38. <build>
  39. <resources>
  40. <resource>
  41. <directory>src/main/resources</directory>
  42. <includes>
  43. <include>**/*</include>
  44. </includes>
  45. <filtering>true</filtering>
  46. </resource>
  47. <resource>
  48. <directory>src/main/env/${package.environment}</directory>
  49. <includes>
  50. <include>**/*</include>
  51. </includes>
  52. <filtering>true</filtering>
  53. </resource>
  54. </resources>
  55. <finalName>${project.artifactId}</finalName>
  56. </build>
  57. </profile>
  58. </profiles>

Maven的日常的更多相关文章

  1. Maven日常 —— 你应该知道的一二三

    以前在日常工作中,使用Maven只是机械的执行Maven clean.Maven install,对其中的原理与过程并无了解,近期阅读了<Maven实战>,对Maven有了更深入的理解. ...

  2. (十二)Maven生命周期和插件

    除了坐标.依赖以及仓库之外,Maven的另外两个核心概念是生命周期和插件.在有关Maven的日常使用中,命令行的输入往往就对应了生命周期,如mvn package就表示执行默认生命周期阶段packag ...

  3. Nexus 私有仓库搭建与 Maven 集成

    Nexus 私有仓库搭建与 Maven 集成 |作者:RexFang |出处:http://www.cnblogs.com/rexfang/ |关于作者:Java 程序员一枚 |版权:本文版权归作者和 ...

  4. Maven快照机制(SNAPSHOT)

    文章转自 http://www.cnblogs.com/EasonJim/p/6852840.html 以下引用自https://ayayui.gitbooks.io/tutorialspoint-m ...

  5. 05 Maven 生命周期和插件

    Maven 生命周期和插件 除了坐标.依赖以及仓库之外, Maven 另外两个核心概念是生命周期和插件.在有关 Maven 的日常使用中,命令行的输入往往就对应了生命周期,如 mvn package ...

  6. maven+springboot项目使用idea打包

    首先简单了解一下maven: 概述 日常开发中,我们用到的maven相关功能大概以下几种: 1. 管理jar依赖 2. 构建项目(打包.编译等) 3. 发布项目(共享.上传至服务器,供他人使用) 简单 ...

  7. Maven之——仓库(下)

    Maven之--仓库(下) 1.    快照版本号 Maven世界中不论什么项目或者构件都有自己的版本号. Maven在构建时检測到构件是快照版本号.而且当前构件不是最新版本号的时候.就会自己主动更新 ...

  8. Java-Maven-Runoob:Maven 快照(SNAPSHOT)

    ylbtech-Java-Maven-Runoob:Maven 快照(SNAPSHOT) 1.返回顶部 1. Maven 快照(SNAPSHOT) 一个大型的软件应用通常包含多个模块,并且通常的场景是 ...

  9. Maven一些总结

     1.Maven的安装和配置   从Maven的官网上下载Maven的安装包,http://maven.apache.org/download.html.   将其解压在你想安放的目录下.   然后配 ...

随机推荐

  1. ComM(通信管理)和CanNm(network)

    1      网络管理组成部分 网络管理部分由通信管理器(简称ComM),通用网络管理器接口(简称NmIf),总线相关的网络管理器(简称NM,包括CanNM,LinNM,FrNM),总线相关的状态管理 ...

  2. 讲道理,为什么分布式一定要有Redis?

    考虑到绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知.所以我斗胆以 Redis 为题材,对  ...

  3. hbuilder 个推 问题记录

    截止版本日期: 2017/09/19 一,安卓没有角标问题: Android - 2.2+ (支持): 目前仅支持小米(MIUI v5),其它设备调用后无任何效果.官方文档 二,ios角标混乱问题: ...

  4. Java 多线程篇

    先举个例子 计算机的核心是CPU,它承担了计算机所有计算任务,可以把它理解为像一个工厂,时刻在运行. 假定工厂有一个电力系统,工厂有很多车间,一次只能供给一个车间使用,也就是说一个车间开工的时候,其他 ...

  5. Day28--Python--网络通信协议 tcp与udp下的socket

    昨日内容回顾: 1. CS架构 服务端客户端架构 软件CS架构: 京东,淘宝,QQ,微信,暴风影音,快播 硬件CS架构: 打印机 服务端: 提供服务的 客户端: 享受服务的 BS架构: 浏览器和服务端 ...

  6. mysql中CONCAT值为空的问题解决办法

    在mysql中concat函数有一个特点就是有一个值为null那么不管第二个字符有多少内容都返回为空了,这个特性让我们在实例应用中可能觉得不方便,但实现就是这样我们需要使用其它办法来解决. 天在做op ...

  7. 【CF280D】 k-Maximum Subsequence Sum ,线段树模拟费用流

    昨天考试被教育了一波.为了学习一下\(T3\)的科技,我就找到了这个远古时期的\(cf\)题(虽然最后\(T3\)还是不会写吧\(QAQ\)) 顾名思义,这个题目其实可以建成一个费用流的模型.我们用流 ...

  8. php php-fpm安装 nginx配置php

    centos 6.2 linux下安装php5.6.6源码 PHP在 5.3.3 之后已经把php-fpm并入到php的核心代码中了. 所以php-fpm不需要单独的下载安装.要想php支持php-f ...

  9. 洛谷P1762 杨辉三角,规律

    https://www.luogu.org/problemnew/show/P1762 题意:给定一个正整数n,请输出杨辉三角形前n行的偶数个数对1000003取模后的结果. 由于N <= 1e ...

  10. kettle连接mysql数据库并进行数据分析

    1.数据库链接驱动 如果没有安装对应的数据库链接驱动,在数据库链接的过程中,可能会报某个数据库连接找不到的异常,因此需要下载对应驱动后(安装步骤可以参见“怎么在官网上下载java连接mysql的驱动j ...