在标准的 maven打war包 项目中配置文件、资源文件等都是放到 resources
目录下的。这个目录中的文件打包时会打到 classes
目录下作为配置文件
但是在有些项目中,resources
目录下有些文件是不想打进 WAR 包的
有些人会使用 resources 的 excludes 方式,也是可以达到效果的配置如:
|
但是:这种方式会导致将项目导进 Eclipse 中,Eclipse 也识别到了在 Eclipse 本地编译时也会去掉這些文件,但是这些文件在本地运行又是需要的当然可以在 Eclipse 中配置强制 Excluded
为None
,但是毕竟每个开发的电脑上都要配置比较麻烦。
|
多个文件使用逗号分隔可以使用 *
做通配符。
目标:实现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文件
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。