三木零 发表于 2022-4-15 19:12

【spring+javaweb】在spring项目中添加javaweb报错解决

本帖最后由 三木零 于 2022-4-16 09:19 编辑

前置:项目基于Spring+javaweb,创建流程为先创建了Spring项目,再添加javaWeb项目上去,也可以直接添加maven插件来直接运行,如有问题,纯属技术不精
PS:适合有一些基础的人看,纯小白的话可能有些吃力,不排除是天才的情况
目录:
===正常添加===
1、导入POM配置
2、创建webapp包,写上一个servlet类(测试用)
3、点开Project Settings来添加Modules
4、添加完之后在Deployment Descriptors中选择web.xml文件所在的位置
5、在Deployment Descriptors中,选择Artifacts,点+号添加
6、添加完之后更改一下编译完之后文件的路径
7、添加一个tomcat来运行项目
8、运行
9、测试写的servlet类
===常见问题解决===
!如果报错说找不到某些类
!如果配置好tomcat,然后运行一看发现没有任何动静
===添加maven插件运行===(更简单)
1、添加maven插件
2、创建webapp文件夹,运行


============正常流程添加javaweb=======================================
1、导入POM包,导入这两个包即可
<!--提供前端与后端交互的通道-->
      <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
            <scope>provided</scope>
      </dependency>
      <!-- servlet的依赖包,提供了请求和响应数据的操作 -->
      <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.2.1</version>
            <scope>provided</scope>
      </dependency>
2、创建一个webapp包,里边写一个测试用的servlet类,每个人的可能都不一样(这不重要)

3、点开Project Settings来添加Modules,点击+号翻到后边添加web

4、添加完之后在Deployment Descriptors中选择web.xml文件所在的位置,并且在Web Resource Directories中选择整个Webapp的位置(这样才能让编译器识别javaweb配置在哪个文件夹)

下图这个配置只需要选择webapp目录如果没有这个目录的话就直接写路径,他自己会生成

5、接下来也是在Deployment Descriptors中,选择Artifacts,点+号添加,有俩东西要添加
点击之后直接确定就好

这里也是一样的

6、添加完之后更改一下编译完之后文件的路径,改成spring的输出文件路径,这一步要看清楚一点,并不是说一定是这个路径,要是项目输出文件目录下
没有带exploded的改成这样

另一个就改成这样

7、添加一个tomcat来运行项目,如果没有tomcat的话去官网下载一个
介绍步骤:
(1):添加一个tomcat,注意不是tomcatEE server,是tomcat server
(2):添加tomcat,路径选你的tomcat安装目录,选整个文件夹就好了,不是选tomcat的bin目录
(3):这个url是运行后项目的根路由
(4):jre配置自己的就可以了,能配多少版本我没测过

然后还有,看下图,选那个只有war的就可以了,然后添加

之后再把这里这个路径改成/就可以了,然后确定

8、然后运行,浏览器会自己弹出一个界面,能访问就是成功了,对了,记得在webapp的目录下边添加一个index.jsp,让他有页面访问,下边有模板
<%--
Created by IntelliJ IDEA.
User: SMLMKZR
Date: 2022/4/15
Time: 18:32
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>title</title>
</head>
<body>
<div>hello word</div>
</body>
</html>
9、之前写的用来测试的类,访问一下试试能不能成功(我的可以)
=========================常见问题==========================================
如果报错说找不到某些类,则看看maven有没有导入到,然后再看第6步选路径的部分,有没有选到spring的输出路径,总之一般这种情况就是编译的时候一些类没有加载到输出文件
如果配置好tomcat,然后运行一看发现没有任何动静,就看一下第7步的第三张图有没有添加上
如果还有其他问题可以发评论区,尽量解决
============使用maven配置tomcat来运行项目=======================================
这个就简单多了,只需要在main下边添加一个webapp,里边写上几个html文件即可
1、先添加POM插件
<!--Tomcat插件,控制启动目录和端口-->
    <build>
      <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                  <!--端口控制-->
                  <!--<port>8080</port>-->
                  <path>/</path>
                  <!--<uriEncoding>UTF-8</uriEncoding>-->
                </configuration>
            </plugin>
      </plugins>
    </build>
2、添加完之后刷新一些maven,然后添加webapp目录,然后在写代码的地方右键一下,然后运行就好了

配置maven的tomcat插件的时候需要在POM文件里添加以下代码,把默认打包方式改为war包
<packaging>war</packaging>

woshimll 发表于 2022-4-15 23:05

楼主辛苦了

三木零 发表于 2022-4-16 09:17

woshimll 发表于 2022-4-15 23:05
楼主辛苦了

一起加油,共同提升{:1_927:}

xiadongming 发表于 2022-4-16 10:21

15028352577 发表于 2022-4-16 10:46

谢谢分享,长知识了

三木零 发表于 2022-4-16 14:13

xiadongming 发表于 2022-4-16 10:21
初学的?,,,

对,只是遇到了这个问题,记录一下印象更深刻
页: [1]
查看完整版本: 【spring+javaweb】在spring项目中添加javaweb报错解决