带有 Intellij 的 Maven WebApp - 程序

Maven WebApp with Intellij - procedure

使用 Maven 和 Intellij 制作 Java EE WebApp 的过程是什么?

我就是这样做的:

但是当我创建一个 servlet 时,IntelliJ 在 servlet 上显示了一个符号:

这个符号是"Java class located out of the source root. Refer to the section Configuring Content Roots for details"

如果我启动项目,我会收到错误消息。

如果我将 "resources" 目录标记为 "Sources Root",则该项目有效。

但是如果我重新加载 Maven(右键单击/maven/reimport),资源目录会丢失 "Source Root" 结构。

我认为我的程序有问题。

main 下创建一个名为 java 的新文件夹。然后右键单击它并 select Mark Directory As -> Sources Root。将此目录用于所有 java 代码,一切都应该有效!

感谢 Chrkv!

1).在 main 下创建一个名为 java 的新文件夹。然后右键单击它并 select 将目录标记为 -> Sources Root

2).在 Project Structure / Modules / Web 中启用 makes java "Sources Root"

的复选框

现在我可以使用右键单击 java / 新建 / Servlet。

什么是 "resources" 目录? (如果我不能在这里创建 servlet)

这是正确的程序吗?

我也遇到了同样的问题,通过替换依赖找到了解决方案:

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>servlet-api</artifactId>
  <version>2.5</version>
  <scope>provided</scope>
</dependency>

通过以下依赖

<dependency>
      <groupId>javax</groupId>
      <artifactId>javaee-api</artifactId>
      <version>6.0</version>
      <scope>provided</scope>
  </dependency>

添加此内容并使 java 成为上述答案中提到的源根目录后,intellij idea 提供了创建过滤器和 Web 服务的选项。我按照 link 中的步骤操作:http://www.tugay.biz/2013/10/hello-world-web-application-with-maven.html