可以将我的webapp打包为JAR并将Web资源放在META-INF / resources下吗?

时间:2014-06-23 10:00:29

标签: jsf-2.2 servlet-3.0

我有几个JSF项目(由maven构建),它依赖于具有常见Web资源的项目。

我有两种可能性:

a)所有项目都有包装类型 war ,maven-war-plugin会将所有内容合并为一个战争(叠加)。

b)我的具有常见Web资源的项目打包为 war ,所有其他项目都成为 jar 工件。这些项目的所有Web资源都在 src / main / resources / META-INF / resources (servlet 3 API)下,并且不再具有 src / main / webapp 文件夹。

这种方法有缺点吗?

我认为,b)显示出很好的模块性,但“新”目录结构可能会让开发人员感到困惑。

1 个答案:

答案 0 :(得分:0)

a)您无法将公共Web项目导出和分发为JAR(如PrimeFaces,OmniFaces,RichFaces等)。随着b)你会。

这确实只是基于servlet的Web片段项目的推荐结构(另见Servlet 3.0 specification的第8.2章)。它确实可能会使受过严格教育的开发人员感到困惑,但这是一个非技术性问题,它只是一个教育问题。在向项目介绍新的开发人员时要考虑到这一点(例如在访谈中介绍和/或在内部项目手册中记录)。

另见: