用maven替换我的Web.xml中的值

时间:2016-02-02 13:20:32

标签: java maven

我的Web.xml中有一个值

<display-name> MyApp version @minorversion@- Pré prod </display-name>

我想知道当我想编译或打包时,是否可以使用maven读取属性文件来替换我的Web.xml中的值?

2 个答案:

答案 0 :(得分:0)

您可以使用maven-replacer-plugin

              <plugin>
                    <groupId>com.google.code.maven-replacer-plugin</groupId>
                    <artifactId>replacer</artifactId>
                    <version>1.5.3</version>
                    <executions>
                        <execution>
                            <id>REPLACE</id>
                            <goals>
                                <goal>replace</goal>
                            </goals>
                            <phase>{Phase to execute in}</phase>
                          <configuration>
                                <file>${Path to file to replace}</file>
                                <regex>true</regex>
                                <token>${Regex to match in file}</token>
                                <value>${New Value to Replace matched}</value>
                                <regexFlags>
                                    <regexFlag>MULTILINE</regexFlag>
                                    <regexFlag>DOTALL</regexFlag>
                                </regexFlags>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

答案 1 :(得分:0)

  1. 添加src \ main \ resources \ conf.properties:

    minorversion=1.0.0.0
    
  2. pom.xml

           <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <resourceEncoding>${project.build.sourceEncoding}</resourceEncoding>
                    <webResources>
                         <resource>
                              <filtering>true</filtering>
                              <directory>src/main/webapp</directory>
                              <includes>
                                <include>**/web.xml</include>
                              </includes>
                            </resource>
                    </webResources>
                    <filters>
                      <filter>src/main/resources/conf.properties</filter>
                    </filters>
                </configuration>
            </plugin>
    
  3. web.xml

    ...
    @minorversion@
    

    ${minorversion}
    ...