解决idea--new右键菜单无法创建Servlet/Filter/Listener的问题(maven和非maven动态web项目)

这是我的方法,自己是有效的,如果无效请发表评论,我会尽量帮忙解决。

非maven项目:
修改项目名+.iml文件(别忘了去掉注释)

<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
  <component name="FacetManager">
    <facet type="web" name="Web">
      <configuration>
        <descriptors>
          <deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/web/WEB-INF/web.xml" />
        </descriptors>
        <webroots>
          <root url="file://$MODULE_DIR$/web" relative="/" />
        </webroots>
      </configuration>
    </facet>
    <facet type="web" name="Web">
        <configuration>
            <descriptors>
                <deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/WebContent/WEB-INF/web.xml" />
            </descriptors>
            <webroots>
                <root url="file://$MODULE_DIR$/WebContent" relative="/" />
            </webroots>
         //在此处加入以下四行代码
            <sourceRoots>
                <root url="file://$MODULE_DIR$/src" />
                <root url="file://$MODULE_DIR$/src/main/java" />
            </sourceRoots>
      
        </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager">
    <output url="file://$MODULE_DIR$/web/WEB-INF/classes" />
    <output-test url="file://$MODULE_DIR$/web/WEB-INF/classes" />
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" scope="PROVIDED" name="Tomcat 8.5.50" level="application_server_libraries" />
    <orderEntry type="module-library">
      <library>
        <CLASSES>
          <root url="file://$MODULE_DIR$/web/WEB-INF/lib" />
        </CLASSES>
        <JAVADOC />
        <SOURCES />
      </library>
    </orderEntry>
  </component>
</module>

maven项目:
xml文件加入依赖:

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/jstl/jstl -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>

即可

发布了165 篇原创文章 · 获赞 24 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/treblez/article/details/104203325