zoukankan      html  css  js  c++  java
  • pom.xml配置,针对mvn clean install -P参数(环境参数)打包

    pom.xml配置,针对mvn clean install -P参数(环境参数)打包

    比如你有2个环境,一个dev,一个prod,

    然后你在mvn打包的时候,可以通过-P来打包,是打dev包,还是prod包。

    pom.xml可以这样配置

    <profiles>
            <profile>
                <id>dev</id>
                <properties>
                    <env>dev</env>
                </properties>
                <activation>
                    <activeByDefault>true</activeByDefault>  //如果不带-P但是,默认是dev
                </activation>
            </profile>
            <profile>
                <id>devtest</id>
                <properties>
                    <env>devtest</env>
                </properties>
            </profile>
            <profile>
                <id>prod</id>
                <properties>
                    <env>prod</env>
                </properties>
            </profile>
        </profiles>
    

      

    -Pdev / -Pprod 的参数dev/prod,会根据传入的参数代入到具体的打包配置中

     <build>
            <finalName>xzair-rest</finalName>
            <scriptSourceDirectory>src/main/java</scriptSourceDirectory>
            <resources>
                <resource>
                    <directory>src/main/resources/${env}</directory>
                    <filtering>true</filtering>
                </resource>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                    <excludes>
                        <exclude>dev/*</exclude>
                        <exclude>devtest/*</exclude>
                        <exclude>prod/*</exclude>
                    </excludes>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <filtering>true</filtering>
                    <includes>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
            <plugins>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
                        <warSourceDirectory>src/main/webapp</warSourceDirectory>
                        <failOnMissingWebXml>false</failOnMissingWebXml>
                        <webResources>
                            <resource>
                                <directory>src/main/resources/${env}</directory>
                                <targetPath>WEB-INF/classes</targetPath>
                                <filtering>true</filtering>
                            </resource>
                            <resource>
                                <directory>src/main/resources</directory>
                                <filtering>true</filtering>
                                <excludes>
                                    <exclude>dev/*</exclude>
                                    <exclude>devtest/*</exclude>
                                    <exclude>prod/*</exclude>
                                </excludes>
                            </resource>
                            <resource>
                                <directory>${project.basedir}/src/main/resources/lib</directory>
                                <targetPath>WEB-INF/lib</targetPath>
                                <filtering>false</filtering>
                                <includes>
                                    <include>**/*.jar</include>
                                </includes>
                            </resource>
                        </webResources>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <encoding>UTF-8</encoding>
                        <!-- 过滤后缀为pem、pfx的证书文件 -->
                        <nonFilteredFileExtensions>
                            <nonFilteredFileExtension>pem</nonFilteredFileExtension>
                            <nonFilteredFileExtension>pfx</nonFilteredFileExtension>
                            <nonFilteredFileExtension>p12</nonFilteredFileExtension>
                        </nonFilteredFileExtensions>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.tomcat.maven</groupId>
                    <artifactId>tomcat7-maven-plugin</artifactId>
                    <version>2.2</version>
                    <configuration>
                        <path>/xzair-rest</path>
                        <charset>${project.build.sourceEncoding}</charset>
                        <port>${server.port}</port>
                        <uriEncoding>${project.build.sourceEncoding}</uriEncoding>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

      

    cmd打包的时候可以这样打

    mvn clean isntall -Pprod
    或者
    mvn clean install -Pdev
    

      

  • 相关阅读:
    kvm虚拟化
    kvm虚拟机管理
    认识佛教
    【书籍推荐】《自我观察:第四道入门手册》爱自己
    [推荐] 自我观察的四个基本原则
    只要你真会念,念到不起心、不动念、不分别、不执着,六根接触六尘境界就是修行
    胡小林老师最新答问(全两集)2017年3月9日发布
    蔡礼旭老师:如何经营幸福生活(武汉万人论坛)
    新视频】蔡礼旭老师:学圣贤教诲 改人生命运(2013年北京论坛)附下载
    【论坛先河,载入史册】陈大惠、钟茂森、胡小林、蔡礼旭、彭鑫老师同台答问(全三集)
  • 原文地址:https://www.cnblogs.com/achengmu/p/10647662.html
Copyright © 2011-2022 走看看