IDEA,SSM+Maven项目,server报错:“Artifact xxx: war exploded: Error during artifact deployment”

【背景】利用SSM框架在IDEA进行系统后端开发,点击run(绿色右向小三角)后server处出现下图所示的报错。

 

【常规解决方法】经过一番检索后,尝试了常见的解决方法

1、依次点击 File | Settings,检查maven路径是否正确

 

 2、依次点击 File | Project Structure,检查Artifacts 是否正常

很多博客会建议直接删掉原来的所有war,即上图第二列的两行。具体操作:单击要删除的行,点击上方的减号“—”。

然后重新添加war。具体操作:点击上方的加号“+”,依次选择Web Apllication:Exploded | From Modules。(改完记得点击右下角的OK或者Apply哦)

 3、点击下图红框框出,然后点击Edit Configuration

 首先在Server界面,检查Tomcat和JDK的路径

 然后切到Deployment界面,检查artifact deployment的设置。有两处地方需要检查,记得下拉右侧的滚动条。artifact这一行的最左边要出现下图这种菱形小图标才是正确的,如果是红字且无图标说明出错了。

很多博客会建议直接删掉这两个原来的artifact重新添加。方法与2类似。最好先删下面的Build(Before Launch中的),再删上面的。添加的时候直接添加上面的,下面的会自动出现,没出现就手动添加。

【我所用的解决方法】

以上地方我都检查过,且更新过pom,重启过IDEA,都没用。

经历了一番曲折,求助了学姐帮忙远程看了一下,终于找到了问题的关键。(大家注意要看看log的信息,会有你遇到的问题的详细描述)

 原来是程序找不到mybatis文件夹和db.properties了。

这两个路径都是定义在applicationContext-dao.xml文件里的。于是我把这俩直接复制到了java文件夹底下。启动,成功运行了!

但我觉得这终归怪怪的,询问师姐后,发现她并没有挪到java底下,这俩都好好的待在resources文件夹里面。

 

而且我总觉得resources这个词儿特别眼熟!应该在我痛苦的摸索阶段中看到过!经过一番寻找,在Project Structure的Modules里找到了它!

我灵机一动,把resources文件夹标记为了Resources。删掉了java文件夹底下的。运行成功了!!!

思考:感觉系统一般会自动去resources底下找classpath,但是我之前没有把项目中名为resources文件夹“标记”为Resources(通常系统会自动找同名文件夹,但有时候也会“瞎了”,也有可能是因为首字母大小写不一样?),所以系统找不到该文件夹内的文件了。

 

  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:数字20 设计师:CSDN官方博客 返回首页

打赏作者

___ww

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值