zoukankan      html  css  js  c++  java
  • maven插件 按配置加载不同环境配置文件进行打包(maven-war-plugin)

    1.配置多种不同环境

    如(本地local,开发dev,测试test 环境等)

     1   <profiles>
     2         <profile>
     3             <id>local</id>
     4             <properties>
     5                 <package.environment>local</package.environment>
     6             </properties>
     7         </profile>
     8         
     9         <profile>
    10             <id>dev</id>
    11             <properties>
    12                 <package.environment>dev</package.environment>
    13             </properties>
    14             <!-- 指定使用哪一个配置 -->
    15             <activation>
    16                 <activeByDefault>true</activeByDefault>
    17             </activation>
    18         </profile>
    19 
    20         <profile>
    21             <id>test</id>
    22             <properties>
    23                 <package.environment>test</package.environment>
    24             </properties>
    25         </profile>
    26     </profiles>

    其中 第15-17行代码指定使用此环境配置,可以放在不同的<profile>下,需要在项目目录下创建对应配置的文件夹如local、dev、test等 如下

    common文件夹下为项目通用配置,dev下为开发环境的配置,test为测试环境下的

    2.在build下配置以下内容

     1 <build>
     2         <finalName>demo项目名称</finalName>
     3         <resources>
     4             <resource>  
     5                 <directory>src/main/java</directory>  
     6                 <includes>  
     7                     <include>**/*.xml</include>  
     8                 </includes>  
     9                 <filtering>false</filtering>  
    10             </resource>  
    11             <resource>
    12                 <directory>src/main/resources</directory>
    13                 <filtering>true</filtering>
    14                 <excludes>
    15                     <exclude>local/*</exclude>
    16                     <exclude>test/*</exclude>
    17                     <exclude>dev/*</exclude>
    18                     <exclude>common/*</exclude>
    19                 </excludes>
    20             </resource>
    21         </resources>
    22         <plugins>
    23             <plugin>
    24                 <groupId>org.apache.maven.plugins</groupId>
    25                 <artifactId>maven-war-plugin</artifactId>
    26                 <version>2.3</version>
    27                 <configuration>
    28                     <encoding>UTF-8</encoding>  
    29                     <archive>
    30                         <addMavenDescriptor>false</addMavenDescriptor>
    31                     </archive>
    32                     <warName>NACPortal_${package.environment}</warName>
    33                     <webResources>
    34                         <resource>
    35                             <directory>src/main/resources/${package.environment}</directory>
    36                             <targetPath>WEB-INF/classes</targetPath>
    37                             <filtering>true</filtering>
    38                         </resource>
    39                         <resource>
    40                             <directory>src/main/resources/common</directory>
    41                             <targetPath>WEB-INF/classes</targetPath>
    42                             <filtering>true</filtering>
    43                         </resource>
    44                     </webResources>
    45                 </configuration>
    46             </plugin>
    47             <!-- 编译配置 按照不同版本进行配置-->
    48             <plugin>
    49               <artifactId>maven-compiler-plugin</artifactId>
    50               <configuration>
    51                   <source>1.8</source>
    52                   <target>1.8</target>
    53                   <encoding>UTF-8</encoding>
    54                   <compilerArguments>
    55                    <extdirs>srcmainwebappWEB-INFlib</extdirs>
    56                   </compilerArguments>
    57               </configuration>
    58             </plugin>
    59         </plugins>
    60 </build>

    开发的过程中就可以通过配置

    <activation>
        <activeByDefault>true</activeByDefault>
    </activation>

    在相应配置环境 进行不同环境下的打包。

    执行mvn install 后即可生成相应的war包 如 project_dev.war,project_test.war等

    至此,大功告成!!

    profile  ['prəʊfaɪl]  详细X
    基本翻译
    n. 侧面;轮廓;外形;剖面;简况
    vt. 描…的轮廓;扼要描述
    vi. 给出轮廓
    网络释义
    Profile: 轮廓
    Bevel Profile: 轮廓倒角
  • 相关阅读:
    Vsftpd 3.0.2 正式版发布
    Putdb WebBuilder 6.5 正式版本发布
    SoaBox 1.1.6 GA 发布,SOA 模拟环境
    pynag 0.4.6 发布,Nagios配置和插件管理
    Percona Playback 0.4,MySQL 负荷回放工具
    xombrero 1.3.1 发布,微型 Web 浏览器
    Hypertable 0.9.6.4 发布,分布式数据库
    libmemcached 1.0.11 发布
    CryptoHeaven 3.7 发布,安全邮件解决方案
    Android Activity生命周期
  • 原文地址:https://www.cnblogs.com/zluckiy/p/10132304.html
Copyright © 2011-2022 走看看