解决idea的项目启动报404的问题
最近在学习IDEA,由于之前一直使用的是Eclipse,所以初次接触IDEA就接触到了不少的坑,其中最让人头疼的大概就是如何让IDEA顺利的启动起来了,这方面我就不细讲了,网上已经有了不少的教程,稍后我也会给大家一个IDEA的学习附件,有兴趣的朋友可以看看,今天主要谈的就是如何解决IDEA项目在启动时报404的问题,相信不少像我一样初次接触IDEA的朋友都掉进过这个坑,今天就带大家了解一下这个坑,以及如何解决。
首先,我们来看一下404这个页面:

从这个图片我们其实能看出一点点端倪,注意最后一句话:description The requested resource is not available.
这句话翻译过来大概意思是,描述:所请求的资源不可用。
既然是请求资源问题,而IDEA又是通过先将项目打包成war包,然后创建一个Tomcat,将war进行加载的方式来启动项目,那么我们就可以猜测到,这个请求资源不可用的问题就一定是出现在打包war包的过程中,或是在Tomcat加载这个war包的时候出现的问题。除了这个两个可能,还有一种可能,也是我自己经历的,那就是你的项目是SVN项目,而你的SVN的路径已经不可用。
知道了原因,那么接下来就好办了,我们一个个来进行解决。
第一步:如何将项目打包成war包:
1、首先,右击项目,点击 open module settings
.
2、配置 project,主要是本地 jdk 的安装路径,还有项目编译输出的路径

3、配置 modules ,其中 paths 定位到 web-inf/classes ;dependencies 加入jdk和项目 web-inf/lib


4、配置 libraries ,点击 + 号,选择 java ,然后还是选择你项目的 web-inf/lib

5、配置 facets ,此步很重要,配置 web resource directories ,路径配错,就会报 404 ,一定要定位到项目根目录,也就是下面有整个项目源码的地方

6、 配置 artifacts ,此步选择第二个,选择你的项目即可

注:这有一步很重要,在添加完以后,一定要选中你的项目,然后鼠标左键Put into Output Root一下

到此,将项目打包就已经完成了,然后就是将项目添加到Tomcat。
第二步,将项目添加到Tomcat:
1.在IDEA的页面右上角,点击此处,打开Tomcat添加页面

2.在新打开的页面添加Tomcat


3.在新添加的Tomcat页面配置好Tomcat的名字,默认浏览器,访问地址,JRE,端口等

在这个页面,我们可以看到,由于没有添加项目war包,su9oyouTomcat还是暴红差的,然后点击Deploment,去添加项目的war包

4.给Tomcat添加已经打包好的war包

添加后,可以配置路径的后缀名,我为了省事就直接用/了,然后点Apply和OK就可以了。

5.然后启动Tomcat就可以了,直接访问localhost就可以访问项目了。


第三步,解决SVN原因访问404的原因
如果经历了上边的步骤,你的Tomcat不报错,但是你访问还是404,而且是SVN项目的话,你就可以试试看是否是你SVN配置的问题了
1.首先确认是否SVN是否能连接上:


如果,你的SVN爆了这个错误,你就可以去看看是否是你的配置出错了

2.重新配置SVN,点击File,Settings,找到Subversion,将里面的勾选的去掉,然后Apply,OK就OK了。



3.可以重新测试一下SVN是否能连接上:

4.然后重新启动Tomcat,就OK了

结语:由于回首也是刚刚开始学用IDEA,所以也只是分享一下回首自己遇到的坑,如有哪些其他原因而这篇文章没有介绍到的,欢迎小伙伴们在下面的评论区中告知一下,大家一起学习,共同进步!
最后,如果有觉得回首写得不错的朋友,可以点个赞,或是加个关注,回首会一直和你们分享和共同成长~~~
解决idea的项目启动报404的问题的更多相关文章
- IDEA发布运行web项目(曾经遇到的项目启动报404)
问题: 配置: 配置 facets ,此步很重要,配置 web resource directories ,路径配错,就会报 404 ,一定要定位到项目根目录,也就是下面有整个项目源码的地方 下面是配 ...
- Linux下Tomcat项目启动报错
Linux下Tomcat项目启动报错 org.springframework.beans.factory.CannotLoadBeanClassException: Error loading cla ...
- maven项目启动报错;class path resource [com/ssm/mapping/] cannot be resolved to URL because it does not exist
项目启动报了一堆错误,其实都是class path resource [com/ssm/mapping/] cannot be resolved to URL because it does not ...
- Eureka Server项目启动报错处理
Eureka Server项目启动报错处理 Eureka是一个服务发现组件,提供服务注册.发现等注册中心功能,使用spring boot启动eureka应用时出现报错: 20:36:17.646 [r ...
- springboot项目启动报错Failed to configure a DataSource: 'url' attribute is not specified and no embedde
springboot项目启动报错Failed to configure a DataSource: 'url' attribute is not specified and no embedde 创建 ...
- SSM项目启动报错:Failed to read candidate component class
SSM项目启动报错:Failed to read candidate component class 换成3.1又没有问题,换成3.2又不行,查看编译环境用的是1.8,将1.8降为1.7,问题解决,服 ...
- vue项目启动报错 spawn cmd ENOENT errno: -4058
vue项目启动报错 spawn cmd ENOENT errno: -4058 运行vue项目(npm run dev)报错 提示 'npm' 不是内部或外部命令 cmd输入node -v 有版本号 ...
- eclipse 中导入 maven项目 启动报错
导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...
- SpringBoot项目启动报错:java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | ...
随机推荐
- -eq、-ne、-gt、-ge、-lt、-le英文意思
在shell脚本中,使用-eq.-ne.-gt.-ge.-lt.-le进行整数的比较.英文意思分别为: -eq :equal(相等) -ne :not equal(不等) -gt :greater ...
- Android Demo---实现从底部弹出窗口
在前面的博文中,小编简单的介绍了如何制作圆角的按钮以及圆角的图片,伴着键盘和手指之间的舞步,迎来新的问题,不知道小伙伴有没有这样的经历,以App为例,点击头像的时候,会从底部弹出一个窗口,有从相册中选 ...
- Cocos2D创建多彩文本显示标签
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) Cocos2D中默认的CCLableTTF类从源代码里看是支持 ...
- java内存垃圾回收模型
一.java的内存模型 介绍如下6个组成部分 1.程序计数器:一块较小内存区域,指向当前所执行的字节码.如果线程正在执行一个Java方法,这个计数器记录正在执行的虚拟机字节码指令的地址,如果执行的是N ...
- android studio——Failed to set up SDK
最近使用android studio ,在IDE里面使用Gradle构建的时候,一直出现构建失败,失败信息显示Failed to set up SDK.然后 提示无法找到andriod-14平台,我更 ...
- UNIX网络编程——I/O复用:select和poll函数
我们看到TCP客户同时处理两个输入:标准输入和TCP套接字.我们遇到的问题是就在客户阻塞于(标准输入上)fgets调用,服务器进程会被杀死.服务器TCP虽然正确的给客户TCP发送了一个FIN,但是既然 ...
- MBR和GPT概要学习
MBR和GPT概要学习 1. MBR和GPT 大家所最为熟知的分区方式同时也是最主流的主要有两种:MBR(Master Boot Record)和GPT(GUID Partition Tabl ...
- iOS中 Swift初级入门学习(一)
/ // Copyright (c) 2015年 韩俊强. All rights reserved. // import Foundation // Swift当中的输出函数 // println S ...
- Android官方命令深入分析之etc1tool
etc1tool是一个命令行工具,可以将PNG图像压缩为etc1标准,并且可以进行解压缩. 用法: etc1tool infile [--help | --encode | --encodeNoHea ...
- UNIX环境高级编程——线程与进程区别
进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性.进程和线程的区别在于: (1)一个程序至少有一个进程,一个进程至少有一个线程. (2)线程的划分尺度小于进 ...