使用Intellij的Maven WebApp - 程序

时间:2015-02-26 12:37:50

标签: java maven servlets intellij-idea

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

这就是我的所作所为:

  • 文件/新建/项目
  • 项目类型:Maven
  • 从原型创建:maven-archetype-webapp

但是当我创建一个servlet时,IntelliJ在servlet上显示一个符号: enter image description here

此符号是" Java类位于源根目录之外。有关详细信息,请参阅配置内容根部分#34;

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

如果我标记"资源"目录为" Sources Root",项目有效。

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

我觉得我的手术有问题。

3 个答案:

答案 0 :(得分:19)

下创建一个名为 java 的新文件夹。然后右键单击它并选择将目录标记为 - > 来源根。将此目录用于所有Java代码,一切都应该有效!

答案 1 :(得分:3)

感谢Chrkv!

1)。在main调用java下创建一个新文件夹。然后右键单击它并选择Mark Directory As - >来源根

2)。在项目结构/模块/ Web中启用make java“Sources Root”复选框

enter image description here

现在我可以右键单击java / New / Servlet。

什么是“资源”目录? (如果我不能在这里创建servlet)

这是正确的做法吗?

答案 2 :(得分:0)

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

<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想法提供了创建过滤器和Web服务的选项。我按照链接中的步骤进行了操作:http://www.tugay.biz/2013/10/hello-world-web-application-with-maven.html