maven打war包 war plugin如何去掉不想打进去的包

在标准的 maven打war包 项目中配置文件、资源文件等都是放到 resources 目录下的。这个目录中的文件打包时会打到 classes 目录下作为配置文件

但是在有些项目中,resources目录下有些文件是不想打进 WAR 包的

有些人会使用 resources 的 excludes 方式,也是可以达到效果的配置如:

 

但是:这种方式会导致将项目导进 Eclipse 中,Eclipse 也识别到了在 Eclipse 本地编译时也会去掉這些文件,但是这些文件在本地运行又是需要的当然可以在 Eclipse 中配置强制 ExcludedNone,但是毕竟每个开发的电脑上都要配置比较麻烦。

 
  1. 多个文件使用逗号分隔可以使用 * 做通配符。

}

目标:实现maven打war包动静分离打包靜态资源打成zip包,动态资源打成war包方便独立部署 打包前先看下工程结构
我的静态资源都是放在webapp目录下面,有css,fonts,html,images,js根目录下的login.js,login.html,打包时需要將这些静态资源文件打成单独的zip包动态资源打成单独的war包

  

重点说下,为什么这里指定的是target目录下呢编译完成后,在target目录下会生成dp目录(吔就是你的工程名)在dp目录下有编译过后的所有文件,包括静态资源文件因此zip包时因此从target/dp目录下取静态资源文件,target/dp目录如下
再来看下pom.xml文件的配置
1.phase标签:值为package在打包时执行,打包前会先编译并在target目录下生成dp目录确保在打包时,能从target目录下获取到所有的静态资源文件 
3.descriptor标签:指定了上面新增的static-zip.xml文件打包时,会自动执行这个文件生成zip文件
}

我要回帖

更多关于 maven打war包 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信