maven copy插件

一、maven-war-plugin插件
    打包时拷贝指定文件到webroot目录
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <webResources>
                        <resource>
                            <directory>src/main/webapp/src/css</directory>
                        </resource>
                    </webResources>
                </configuration>
            </plugin>



二、maven-resources-plugin插件
    打包时拷贝指定文件到任意目录,如下代码是拷贝src/main/webapp/src/css目录下的文件到target目录,打包时target目录的内容会打包到webroot目录
             <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.5</version>
                <executions>
                    <execution>
                        <id>copy-resources</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <encoding>UTF-8</encoding>
                            <outputDirectory>${basedir}/target</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/main/webapp/src/css</directory>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>


三、resource模块
    开发maven项目时,一般都会把配置文件放到src/main/resources目录下,针对这个目录,maven的resources对其进行单独的配置
                 <resources>
                    <resource>
                        <directory>src/main/resources/conf/dev</directory>
                        <filtering>true</filtering>
                        <includes>
                            <include>context.xml</include>
                        </includes>
                    </resource>
                    <resource>
                        <directory>src/main/resources/</directory>
                        <filtering>false</filtering>
                        <excludes>
                            <exclude>context.xml</exclude>
                        </excludes>
                    </resource>
                  </resources>

filtering为true的时候,这时只会把过滤的文件打到classpath下

四、Maven内置变量
  • ${basedir} 项目根目录
  • ${project.build.directory} 构建目录,缺省为target
  • ${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
  • ${project.build.finalName} 产出物名称,缺省为${project.artifactId}-${project.version}
  • ${project.packaging} 打包类型,缺省为jar
  • ${project.xxx} 当前pom文件的任意节点的内容


猜你喜欢

转载自ncs123.iteye.com/blog/2392503