先考虑如下实际情况: war项目C和war项目B都依赖war项目A和JAR项目X. 项目A中保存了B和C项目通用的web资源,比如通用的javascript,CSS,jsp等. 项目X中保存了B和C项目中都依赖的一些class 开发人员希望每次都只面对一个项目,即Team A 开发项目A, Team B开发项目B, Team C开发项目C....以此类推 每个Team在开发自己项目时,都希望能直接进行调试,例如war项目A可以直接部署到TOMCAT上运行测试 最后实际交付给客户的却只有2个项目: B和C .也就是说,最后要打包B和C,而在B和C的war包中都要包含A中的web资源和X中的class 在纯Maven中的实现方案 纯MAVEN环境比较简单,经过一段曲折(先是修改maven-war-plguin源码,再是自定义一个插件),最后发现居然有一个现成的插件可以实现这个功能,示范如下: com.isoftstone.gads common-web 0.0.1-SNAPSHOT war com.isoftstone.gads common-web 0.0.1-SNAPSHOT warpath org.apache.maven.plugins maven-war-plugin 2.1-beta-1 <! - 必须指定,否则默认会变成在target/war/work 导致被打包进war文件,指定后为target/work - > ${project.bu...