优化 gxpt 父项目 pom 配置

本文介绍了如何解决gxpt父项目中每个人都需要手动修改java.home和jboss.home路径的问题,通过利用Maven的环境变量属性,使得在POM文件中不再硬编码路径,简化了配置。同时,文章还详细讲解了Maven的属性、Profile和资源过滤功能,包括内置属性、POM属性、自定义属性、Settings属性、Java系统属性和环境变量属性的使用,以及资源过滤的开启和配置。此外,还探讨了Maven Profile的激活方式,包括命令行激活、设置文件激活、系统属性激活和操作系统环境激活。
摘要由CSDN通过智能技术生成

【问题】

              gxpt 父项目中的 pom 文件,每个人 checkout 下来,都需要手动修改 java.home  jboss.home 的路径。如图:


这样改起来就太麻烦了。所以现在采用一种统一的办法来设定。以后 checkout 出来的,可以不用再修改这两个地址。

 

【做法】

              这里不再填写具体路径,而是获取环境变量的值,只要在环境变量中设置了这两个值,就不用再在 pom 中修改了。如图所示:


 

 

【资料拓展】

http://blog.csdn.net/sin90lzc/article/details/7552033

Maven 内置了三大特性:属性、 Profile 和资源过滤来支持构建的灵活性。

事实上有六种类型的 Maven 属性:

          内置属性:主要有两个常用内置属性 ——${basedir} 表示项目根目录,即包含 pom.xml 文件的目录 ;${version} 表示项目版本。

          POM 属性: pom 中对应元素的值。例如 ${project.artifactId} 对应了 <project><artifactId> 元素的值。具体有哪些 POM 属性可以用,可以查看本页末的附件—— 超级 POM

          自定义属性:在 pom  <properties> 元素下自定义的 Maven 属性。例如 
 

1.       <project>    

2.               <properties>    

3.                       <my.prop> hello </my.prop>    

4.               </properties>    

5.       </project>    

          Settings 属性:与 POM 属性同理。如 ${settings.localRepository} 指向用户本地仓库的地址。

          Java 系统属性:所有 Java 系统属性都可以使用 Maven 属性引用,例如 ${user.home} 指向了用户目录。可以通过命令行 mvn help:system 查看所有的 Java系统属性

          环境变量属性:所有环境变量都可以使用以 env. 开头的 Maven 属性引用。例如 ${env.JAVA_HOME} 指代了 JAVA_HOME 环境变量的值。也可以通过命令行 mvn help:system 查看所有环境变量。

资源过滤

默认情况下, Maven 属性只有在 POM 中才会被解析。资源过滤就是指让 Maven 属性在资源文件 (src/main/resources  src/test/resources) 中也能被解析。

 POM 中添加下面的配置便可以开启资源过滤 
 

1.       <build>    

2.               <resources>    

3.                       <resource>    

4.                               <directory> ${project.basedir}/src/main/resources </directory>    

5.                               <filtering> true </filtering>    

6.                       </resource>    

7.               </resources>    

8.               <testResources>    

9.       

评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值