如何在 Intellij Idea 中创建网页片段项目

How can I create web fragment project in Intellij Idea

我正在寻找在标准 servlet-3.x 规范之上创建一个小型 Web 框架。主要动机是减少样板代码和抽象。在我阅读 servlet 规范后,它看起来不使用 JAX-RS 或 SparkJava 我可以为 API 开发创建小型 Web 框架。

我打算使用 web-fragments 方法来创建我的框架级过滤器和其他 bean,并将其打包为 jar。因此,应用程序开发人员使用 web.xml 创建 war 项目,并将 metadata-complete 选项设置为 false

我可以在 eclipse 中看到 web-fragment 项目模板,但我想使用 maven 开发这个项目。对于 Intellij,我看不到单独的 Web 片段项目的任何此类选项。我想创建简单的 maven 项目,其中包含 web-fragment.xml 的 jar,以便其他 war 项目可以使用它。

那么是否有任何插件或其他选项可用于在 Intellij 中开发 Web 片段项目?

任何添加到 Web 应用程序 WEB-INF/lib 目录的 jar 文件在技术上都是 "web fragment",无论它是否有 META-INF/web-fragment.xml 文件。

因此,您只需要创建一个"jar"打包的maven工程,导入Intellij Idea即可。

  1. 为片段创建一个maven 项目。将 packaging 设置为 jar。无需创建 war 项目。
  2. 在“项目结构”对话框中配置一个空工件:
  3. 使用工具栏按钮,添加 WEB-INF/lib 文件夹。然后创建一个存档并添加编译输出:
  4. 添加 Tomcat 运行 配置,然后在 Deployment 选项卡中,添加您刚刚创建的 Artifact:

我创建了一个包含所有内容的示例项目:https://github.com/ThomasR/web-fragment-idea. Please note that it requires TomEE+